ADCS攻击怎么过?别慌,我把自己踩过的坑全抖出来了
哎,说真的,一提到 ADCS攻击怎么过 这个问题,我估计不少搞内网渗透的兄弟跟我一样,脑袋“嗡”的一下就大了,ADCS(Active Directory Certificate Services)这玩意儿,平时看着人畜无害,不就是个发证书的嘛?可一旦被攻击者盯上,那简直就是域内提权的“高速公路”,我前阵子做项目,差点就在这上面翻车,今天咱就掏心窝子聊聊,ADCS攻击怎么过,到底有没有什么窍门。

先说个真事儿,上个月我在一个客户那儿做攻防演练,打进了域内一台普通机器,想往上走,一看有ADCS,心里那个乐啊——这不就是传说中的“ESC8”提权路径吗?结果我刚准备用PetitPotam去中继,人家EDR直接给我拦了,日志里红彤彤一片,当时我就骂街了:“这ADCS攻击怎么过啊?难道只能干瞪眼?”后来折腾了两天,才慢慢摸到门道,所以今天这篇文章,不是那种教科书式的干巴巴教程,而是我实打实踩出来的经验。
第一个坎:你得先搞清楚ADCS攻击怎么过的前提是啥。 不是所有域都有ADCS,你得先确认环境,用certutil或者LDAP查一下,看看有没有装企业CA,有的话,再瞅瞅那些模板——特别是带“Client Authentication”和“Enroll”权限的,我见过好多兄弟一上来就冲,结果连CA在哪都不知道,那不叫渗透,那叫瞎撞。ADCS攻击怎么过的第一步,永远是信息收集,别嫌烦。
第二个坎:ESC8中继现在越来越难了。 微软也不是吃素的,补丁打上之后,NTLM中继到HTTP的路径基本被堵死,那怎么办?别死磕啊!可以试试ESC11,或者看看有没有配置错误的模板允许低权限用户注册,我就遇到过一个小公司,模板权限设得跟筛子似的,Domain Users就能申请“域控制器”证书,当时我手都在抖——这也太香了吧?直接申请下来,用Rubeus或者certipy一认证,域管哈希到手,所以ADCS攻击怎么过,关键在“灵活”,这条路不通就换一条。
第三个坎:工具用不对,神仙也白费。 我强烈推荐certipy,这玩意儿简直是ADCS攻击的瑞士军刀,但注意啊,版本得新,旧版有些漏洞利用不了,还有,跑的时候记得挂代理,不然流量特征太明显,千万别在目标机器上直接传工具,用内存加载或者远程执行,我有次偷懒,把certipy传到靶机上,结果被杀了,还好只是个演练,不然真得卷铺盖走人。
第四个坎:绕过检测。 现在EDR对ADCS攻击的检测点主要集中在:异常证书申请、NTLM中继行为、以及CA服务器上的可疑RPC调用,怎么过?我的经验是——慢一点,别批量搞,一次只申请一个证书,间隔长一点,模仿正常用户的申请频率,还有,申请下来的证书别急着用,放一放,等日志凉了再动手,如果目标有ATP或者Defender for Identity,那更得小心,它们对ESC系列的检测很敏感,我一般会先拿一个低价值目标试水,确认没告警再扩大战果。
第五个坎:心态别崩。 说实话,ADCS攻击怎么过这个问题,很多时候不是技术问题,是耐心问题,我见过太多人一遇到报错就放弃,或者一被拦就换目标,其实有时候就差那么一步——比如证书申请成功了,但认证失败,可能是CA配置了强映射,这时候得去翻注册表或者LDAP找找有没有可用的映射关系,再比如,中继失败可能是因为目标没开WebClient,那就试试其他协议,别轻易说“过不去”。
最后唠叨一句:ADCS攻击怎么过,没有万能答案,每个域的环境都不一样,补丁级别、EDR、CA配置,甚至管理员的心情,都能影响你的成功率,但只要你把信息收集做扎实,工具用熟练,再有点耐心,八成以上的ADCS攻击路径都能找到突破口,记得授权啊!别没授权就瞎搞,那可是要进去踩缝纫机的。
好了,今天就扯这么多,如果你也在为ADCS攻击怎么过发愁,欢迎来这里一起交流,咱们下回见,拜了个拜!