Vulnhub实战-FALL靶机👻

Vulnhub实战-FULL靶机👻

下载地址:http://www.vulnhub.com/entry/digitalworldlocal-fall,726/

1.描述

image

通过描述我们可以知道这个靶机枚举比较多。

2.主机探测,端口扫描

  1. 主机探测
    可以看到扫出主机IP为:192.168.33.60
    nmap -sn 192.168.33.0/24

image

  1. 接下来进行端口扫描,服务发现

nmaps -sS -p- -v 192.168.33.60

image

我们可以看到开启了22,80,139,443,445,3306,9090端口,这里端口一大部分都是障眼法噢,比如那个3306,不管了80端口开了,肯定有web服务了,先去看看再说。

3.web服务测试

  1. 访问IP打开看到一个页面,然后找找看看发现了这样一个页面:

image

这句话说让我们不要再用test脚本去污染webroot了👀,我没干。那既然有人干了,我们就去看看test.php在不在吧,访问http://192.168.33.60/test.php,得到如下提示:

image

提示:说我们的http参数错误
还记得一开始说的这个靶机枚举比较多嘛,这里我们爆破以下http参数吧,通过wfuzz(kali自带的)
不懂命令的可以看看这个教程:https://www.cnblogs.com/Xy--1/p/12913514.html

wfuzz -c -w /root/dictionary/fuzzDicts-master/paramDict/AllParam.txt --hh 80 --hc 404,403 -u "http://192.168.33.60/test.php?FUZZ=/etc/passwd" -t 60

image

可以看到我们成功爆出参数file了,通过file去访问一下看看:

http://192.168.33.60/test.php?file=/etc/passwd

image

我们看到了用户名qiu,然后这里接着就是通过ssh密钥登录ssh了。
ssh密钥登录的相关知识可以参考如下文章:https://wangdoc.com/ssh/key.html

我们这里通过file存在文件包含漏洞了,接下来我们看看默认的存在密钥的地方有没有私钥吧。
ssh密钥默认存放目录:

/home/用户名/.ssh/id_rsa         //rsa加密的私钥
/home/用户名/.ssh/id_rsa.pub     //rsa加密的公钥
/home/用户名/.ssh/id_dsa         //dsa加密的私钥
/home/用户名/.ssh/id_rsa.pub     //dsa加密的公钥

一般ssh加密算法就是rsadsa加密。以上都是ssh密钥的默认文件名和默认存放目录
接下来我们尝试读取以下发现了rsa加密的私钥:

image

我们把私钥文件下载到kali上面然后通过私钥登录ssh,通过私钥登录是不需要密码的,(当然你也可以设置要密码,默认不需要🙃)

wget http://192.168.33.60/test.php?file=/home/qiu/.ssh/id_rsa -O id_rsa
ssh qiu@192.168.33.60 -i id_rsa

image

4.提权

成功登录ssh之后,我们发现当前用户是qiu,接下来我们想办法提权到root用户。

  1. 我们首先看看历史命令执行了什么,通过查看历史命令我们发现了当前用户的密码,然后我们看看能够以root权限执行什么命令,我们发现用户可以通过sudo执行所以命令,那么我们就能够通过qiu的密码去登录到root用户了。执行sudo su命令成功切换到root用户。
ls -al
cat .bash_history
sudo -l
sudo su

image
image

接下来读取proof.txt,先给它777权限在读取,得到flag!👻

个人总结:通过这篇文章我明白了ssh登录可以通过密钥登录,比密码登录更加安全,因为密码登录,弱密码存在被爆破的可能性,密码太难了又记不住。学到了!👍


image

posted @ 2021-10-22 16:45  胖三斤1  阅读(458)  评论(2编辑  收藏  举报
Live2D