域控常见打法总结
2023-11-27 21:5:22 Author: Z2O安全攻防(查看原文) 阅读量:14 收藏

0x1 前言

最近复习了下域的一些知识,查阅资料的时候感觉比前几年的时候多了不少,越来越透明了,然后这里顺便总结下常见拿域控的方法,都是实战中常用的,每种方法下面都贴了实战或者参考文章的链接,然后平常学习的时候,要理清楚每种漏洞的原理,漏洞需要的条件,然后在实际的环境中,结合收集到的信息,这样才能梳理出正确和清晰的攻击思路。

0x2 常见拿域控的方法

2.1 高可用域控漏洞

通过ZerologonNopacPrintNightmare漏洞一把梭,MS17-010,MS-14068运气很好的话说不定也能梭,然后就是漏洞利用的条件以及漏洞原理搞清楚,具体的漏洞利用过程网上文章超级多了。

MS-14608实战文章:

https://mp.weixin.qq.com/s/rS-LAAjPI-k0-n_HxlSt9w

MS17-010实战文章:
https://mp.weixin.qq.com/s/KzghydvJtaFyPOrNanosAg
Zerologon实战文章:

https://mp.weixin.qq.com/s/pBwIpBx7nJ9wu9R7YJR3xg

NoPac实战文章:

https://mp.weixin.qq.com/s/TLloZlFt-fkxg1pGMk9aQ

PrintNightmare实战文章:

https://mp.weixin.qq.com/s/LrEKrSJiT5zNGahUrFWPFg

2.2 抓取凭据或注入域管理员进程

查看有没有域管理员进程,没有就尝试密码喷洒或其他漏洞等方法,尽可能多横向机器,有的话注入到域管理员进程

实战文章:
https://mp.weixin.qq.com/s/LrEKrSJiT5zNGahUrFWPFg
抓取凭据查看没有域管理员凭据,没有就尝试密码喷洒或其他漏洞等方法,也是尽可能多横向机器。
实战文章:
https://mp.weixin.qq.com/s/gYiBDA14RDQUl1eka_WwIw

可以借助BloodHound更直观。

2.3 非约束委派主机结合打印机漏洞

拿到的这台机器是被域管配置成了非约束委派的话,我们就可以委派域中任意用户去访问任意服务(例如域控的 CIFS 服务),但前提是目标用户向我们发起了 Kerberos 请求,可以使用 PrintBug 或者 PetitPotam强制认证漏洞来完成

参考文章:
https://mp.weixin.qq.com/s/MRtQG6O2eRVczZojJYCw7g
实战文章:
https://mp.weixin.qq.com/s/BgBMs1QNP35riA6ZsorZSA

2.4 CVE-2019-1040

这种一般是通过CVE-2019-1040强制认证进行NTLM Realy,配合RBCD或ACL等来打域控Exchange等,这一部的涉及的知识挺多的,这次也恶补了下。

参考文章:
https://mp.weixin.qq.com/s/bbquXVj24j3jbZNs2XZ_YA
https://mp.weixin.qq.com/s/T55i1FqTonG1aIq9Bcj7VQ
https://mp.weixin.qq.com/s/cnQGg0S9Py7Ix6M9CAqKbg

2.5 Exchange漏洞

通过利用漏洞如ProxyShell、ProxyNotSell、ProxyLogon、CVE-2021-26857、PrivExchange等来获取Exchange服务器权限,获得Exchange 权限后,由于特殊组的缘故导致其拥有WriteDACL权限,可以修改域内的ACL,赋予Dcsync ACE权限给指定的用户,允许模拟域控制器,请求域内帐户的哈希值,包括域管理员的哈希值,最终获取域控制器的控制权。

实战文章:
https://mp.weixin.qq.com/s/Uufa1SabEU2ndJ3Lt5Boig
https://mp.weixin.qq.com/s/sjlBpVjobkSKd_Uf0J_u2A
https://mp.weixin.qq.com/s/O6a40449vTKWUXS4kwD9xA

2.6 ADCS漏洞

ADCS Relay:

内网里有 ADCS 服务,且开启了证书Web注册服务的话,攻击者只需要拥有一个域账号,再结合 PetitPotam 或者 PrintBug强制认证漏洞完成,这里就不用配合CVE-2019-1040漏洞了,因为是Relay To HTTP,然后NTLM Relay拿到 DC 的 Base64 证书,通过asktgt拿到TGT,注入TGT配合DCSYNC,从而获取域控的权限。

参考文章:
https://mp.weixin.qq.com/s/lzBoMZfAXVR0Dj_ogO7oPA
https://mp.weixin.qq.com/s/0s8BptnL8eWZr5k5fM0vxA
实战文章:
https://mp.weixin.qq.com/s/NSirkRa4w1RSjigpTsIcSw

ESC系列

这个看了下目前是ESC1-11了,上面提到的ASCS Relay是ESC-8,剩下的看下面参考文章吧。

参考文章:
https://mp.weixin.qq.com/s/aVURmXz8sTe56KBfyPutEw
https://mp.weixin.qq.com/s/bqdI41850hUkAH89ofSMJw
https://mp.weixin.qq.com/s/-qv0VbudiKr5QhD14b013Q
https://mp.weixin.qq.com/s/bEoaWGp19z3P_CpolHxziA

CVE-2022-26923:

此漏洞受Nopac利用思路的影响,将Nopac中Kerberos认证相关的问题,转向证书认证相关的问题。此漏洞通过将机器账户dNSHostName属性的值修改成与域控一样的方法,来获取域控的机器账户hash,从而获取域控的权限

参考文章:
https://mp.weixin.qq.com/s/3DZPkG4Z9w8xbVKvW64Mgw
https://mp.weixin.qq.com/s/ctpRXyhP7Zl9siAsh9Lsxw
实战文章:
https://mp.weixin.qq.com/s/NSirkRa4w1RSjigpTsIcSw

2.7 ACL滥用

可以借助BloodHound分析ACL控制路径,发现可利用权限,比如如A用户对B用户有WriteDACL权限,就可以在A用户上修改B用户为GenericAll权限,让A用户对B用户拥有所有的访问控制权,然后也可以配合GPO滥用达到添加用户权限添加一个本地管理员添加一个新的计算机启动脚本等操作。ACL滥用比较经典的案例就是通过漏洞获得Exchange 权限后,由于特殊组的缘故导致其拥有WriteDACL权限,可以修改域内的ACL,赋予Dcsync ACE权限给指定的用户。

参考文章:
https://mp.weixin.qq.com/s/YCf-0FiqFfQ7WW0V5JR7jA
https://mp.weixin.qq.com/s/mOVJ21KSArqsoAcV7piUxQ
https://mp.weixin.qq.com/s/XhbsSyDDV774LJ4o2QkSBw
实战文章:
https://mp.weixin.qq.com/s/r_bwyX2qj5VSqf3mVrnqGg

2.8 Pre-Authentication&&AS-REP Roasting&&kerberoasting

这几种都是针对域账户的,枚举用户或脱机爆破。

参考文章:
https://mp.weixin.qq.com/s/TH2BbrEj0X_1r2UkDD75vw

0x3 实战文章推荐

思考或尝试较多的几篇实战文章(建议细心阅读):

https://mp.weixin.qq.com/s/Iup2hZdPADFGDSi2AXP_Pg
https://mp.weixin.qq.com/s/bDH5LYjSPRtxUi1aGNpgSw
https://mp.weixin.qq.com/s/tdPfi4y9vxvJAA2bR_VCcg
https://mp.weixin.qq.com/s/NSirkRa4w1RSjigpTsIcSw
https://mp.weixin.qq.com/s/z_jc0_HLqeRSCtLMG8NpEg
https://mp.weixin.qq.com/s/8OueE-bEIdkvwPWu3KqrcQ

0x4 总结

实战环境下还是要结合收集到的信息来制定有效的攻击路线,实战文章推荐建议好好阅读一下,涉及了很多知识点利用,思考的过程也都体现了出来。

比如,实战文章推荐的第一篇,基于RBCD,通过ADFind或是LDAPsearch等导出LDAP信息,查询机器账户mS-DS-CreatorSID属性对应的SID用户账户对应的objectSid值,进行比较发现某用户拉入域内不少机器,推测可能是运维人员,通过鱼叉钓鱼拿下此用户权限配合RBCD拿下了一台域机器权限,之后上线CS进行信息收集,发现3389有连接记录,提取之后登录某WEB服务器,发现其连接的数据库是域内唯一注册了SPN属性的MSSQL服务,之后通过RottenTomato从SERVICE提权提权到了SYSTEM,之后发现有域管进程,至此成功拿下域控。

实战文章推荐第二篇,使用了BloodHound来对域内收集信息且收集到m.child.xiaoli的域用户PO同时处于child.xiaoli的AS组Enterprise Admins),然后通过寻找到达子域控的最短路径,发现当前ra用户处于SN组对主机PGO有管理员权限且PGO主机存在一个名为PGO的用户Session为子域控管理员权限,所以这里直接拿下了子域控,然后在子域上通过BloodHound分析当前PGO用户,发现PGO用户处于Administrators组且拥有GetChangesALLGetChanges Dnsync权限,所以可以直接拿下PO用户凭据(Enterprise Admins),也就拿下了域林。文中体现了具体的思考过程,多种方法,可以去详细看看。

实战文章推荐第六篇,从WEBDAV XXENTLM Realy配合RBCD,但是RBCD需要一个机器账户,所以通过把在之前的discuz数据库中的用户名整理成字典,并通过 AS_REQ返回包来判断用户名是否存在,然后将discuz的密码拿到cmd5上批量解密,解密后发现大部分用户的登录密码都是P@ssw0rd,于是使用密码喷射,成功获取到了一个域凭据,有了域凭据后连接域控ldap添加机器账户,然后通过S4U申请ST票据登录WEBDAV服务器,最后通过ssp lsass绕过卡巴dump出了域管理员hash,成功拿下域控。

最后还是做好域内信息收集吧,发现的比如,通讯录、运维密码本等这类信息也收集好,有时候对拿下域控也都有关键作用。


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2ODYxMzY3OQ==&mid=2247505643&idx=1&sn=797bb54cccc593d4b17e29a5d0218acf&chksm=ceab3dabf9dcb4bdd633eb23512106778b1226f14740355bdd7410a71a9842747b78a858b13f&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh