逛公众号的时候看到了大佬提供的靶场,闲来无事正好拿来练练手学习一下, 感谢大佬的无私分享。感兴趣的同学可以去原文章中找一下环境地址,这里就不外放了,尊重作者版权。目标设定
一台出网主机,三台域内机器,获取域控桌面下的flag即为完成任务
weblogic反序列化,powershell上线CS
- 已知服务器地址为192.168.92.137,开放7001端口,扫描发现存在weblogic反序列化漏洞CVE_2020_2551
- tasklist无杀软,administrator权限
内网信息收集
ipconfig /all可以看到是域内机器,ping该域名可获得域控IP地址 10.10.10.8利用GPP获取域控administrator密码
什么是 GPP
GPP是指组策略首选项(Group Policy Preference),GPP通过操作组策略对象GPO(Group Policy Object)对域中的资源进行管理。http://www.freebuf.com/vuls/92016.html讲了GPP的应用场景和与之对应的安全问题。简单来说就是,出于想更新每台主机上本地账户密码的目的,利用GPP可以指定某个域账户为所有计算机的本地计算机管理账户。\[Domain Controller]\SYSVOL[Domain]\Policies中的某个Grouop.xml中
其中的cpassword为AES加密值。但在AD中的所有用户都可以读取Group.xml,对于AES的对称加密,在微软的MSDN上可以查到cpassword使用的固定秘钥
利用过程
根据作者描述,靶场存在GPP漏洞,尝试利用一下
使用dir /s /a \\域控IP\SYSVOL\*.xml
dir /s /a \\redteam.red\SYSVOL\redteam.red\Groups.xml
获取到groups.xml文件,打开获取到cpassword字段type \\redteam.red\SYSVOL\redteam.red\Policies\{B6805F5A-614E-4D32-9C2B-7AC2B6798080}\Machine\Preferences\Groups\Groups.xml
利用gpprefdecrypt.py获取到域控密码“cpassword”字段,得到IPC横向访问域控获取flag
- IPC横向IPC是专用管道,可以实现对远程计算机的访问,需要使用目标系统用户的账号密码,使用139、445端口
shell net use \\10.10.10.8\ipc$ "Admin12345" /user:redteam.red\administrator
- 至此可以接管域控,以administrator权限执行命令。
- 访问域控上的资源,获取 flag.txt
总结
域内提供了三台主机,还有一台ms17010的主机没有用上,当然目前的环境跟实战环境也是有一些出入,比如按个人习惯cs上线后肯定是先想办法看能不能开3389以及如何规避杀软,这里知道环境网络结构直接奔着目标去了,所以一切比较顺利。根据靶场描述,使用其他思路比如约束委派或者非约束委派都可接管域控,感兴趣的可以尝试下。另外再次感谢作者提供的靶场。原文链接
Tide安全团队正式成立于2019年1月,是新潮信息旗下以互联网攻防技术研究为目标的安全团队,团队致力于分享高质量原创文章、开源安全工具、交流安全技术,研究方向覆盖网络攻防、系统安全、Web安全、移动终端、安全开发、物联网/工控安全/AI安全等多个领域。
团队作为“省级等保关键技术实验室”先后与哈工大、齐鲁银行、聊城大学、交通学院等多个高校名企建立联合技术实验室。团队公众号自创建以来,共发布原创文章370余篇,自研平台达到26个,目有15个平台已开源。此外积极参加各类线上、线下CTF比赛并取得了优异的成绩。如有对安全行业感兴趣的小伙伴可以踊跃加入或关注我们。
文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2NTA4OTI5NA==&mid=2247495733&idx=1&sn=efe69f9161d4b6b9591c4a5e674d6b03&chksm=ce5dd254f92a5b4201df4ce6aff92c70694ae675e6de65523cb9c3a6abc99198a1f3f580cfde#rd
如有侵权请联系:admin#unsafe.sh