0x1 Info
Tag:
MSSQL,Privilege Escalation,Kerberos,域渗透,RDP
靶场地址:https://yunjing.ichunqiu.com/ranking/summary?id=BzMFNFpvUDU 从web到内网再到域的靶场环境都全,且出题的思路很好,感兴趣的可以去玩玩
0x2 Recon
- Target external ip
47.92.82.196
- nmap
- MSSQL 弱口令爆破,爆破出有效凭据,权限为服务账户权限(MSSQLSERVER)
sa:1qaz!QAZ
0x3 入口点 MSSQL – 172.22.8.18
- 前言,该机器不在域内
- 直接MSSQL shell(这里做完了忘记截图了..)
- 提权,这里直接获取Clsid暴力怼potato(前面几个clsid是用不了的)
修改GetClsid.ps1,添加执行potato
Potato和GetClsid.ps1
执行GetClsid.ps1
获取到有效clsid以及命令执行结果
- 导出SAM,SYSTEM,Security
解出凭据,用administrator + psexec 139横向(外网没有开445)就能获取到 flag01administrator 2caf35bb4c5059a3d50599844e2b9b1f
- qwinsta和端口连接看到有机器rdp过来
- 这边使用administrator psexec后上msf(system权限),使用incognito模块,模拟至john(本人实测,只有msf的incognito能完成后续操作,f-secure lab等其他的模拟令牌工具没成功)
- 使用john的token执行 net use 看到 \\tsclient\C 共享
- 直接获取 \\tsclient\C 下面的 credential.txt,同时提示 hijack image (镜像劫持)
xiaorang.lab\Aldrich:Ald@rLMWuy7Z!#
- 快进,略过搭建代理过程
- CME 扫描 172.22.8.0/24,有三个机器提示密码过期了
- 测试一下 DC01 88端口是否开启(测是否域控),DC01为域控
- smbpasswd.py 远程修改一下过期密码,改成111qqq…
- ldapshell.py 验证,登录域成功
- CME 枚举 RDP,显示能登录进入 172.22.8.46(用CME官方的RDP模块不会扫出有效RDP凭据,这边自己写了一个基于xfreerdp的CME模块)
XiaoliChan/CrackMapExec-Extension
0x4 域渗透 – 入口 – 172.22.8.46
- 登录进入,查看到 xiaorang.lab\Aldrich 不是这台机器的管理员,只是普通用户
- 提权,两种方法
Priv-ESC1:镜像劫持提权(常规)
Get-ACL查看到任何用户都可以对注册表 “HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\” 进行写入,创建操作
创建一个劫持magnify.exe(放大镜)的注册表,执行CMD.exe
锁定用户
点击放大镜
提权至system
Priv-ESC2:krbrelayup提权
域普通权限用户在域内机器,直接带走(非常规,推荐)
- 快进mimikatz,获取到当前机器的机器账户 win2016$
xiaorang.lab\WIN2016$ 4ba974f170ab0fe1a8a1eb0ed8f6fe1a
0x5 域渗透 – DC Takeover
- 两种方法
- 观察 WIN2016$ 的组关系,发现处于 Domain Admins 组,直接使用 Dcsync 带走 DC01 (过程略)
- 约束委派(非常规)
Bloodhound收集域信息,分析,发现存在约束委派
使用 getST.py 进行约束委派攻击
带走 DC01
0x6 Outro
- 个人比较手残,不懂C,incognito那个部分,按照作者解释来说,常规是要自己写一个impersonate token的工具(还是没脱离MSF.. TAT)
发表评论
您还未登录,请先登录。
登录