Pass‑the‑Hash 直接使用系统已有的 NTLM 哈希进行身份验证,无需破解密码,即可横向移动到其他主机。Kerberoasting 则从 Active Directory 服务票据中提取 Kerberos 哈希,离线破解常用弱密码的服务账户。两种技术组合,能在不加零日漏洞的情况下完成域接管。
典型攻击流程:初始通过钓鱼获得 Meterpreter 反向 Shell → 用 Mimikatz 提取管理员 NTLM 哈希 → 利用 psexec 横向移动到其他主机 → 在域控制器上执行 Invoke‑Kerberoast 获取服务票据哈希 → 使用 hashcat 离线破解 → 用破解出的服务账户密码提升到 Domain Admin → 最后提取 NTDS.dit 并制作 Golden Ticket 持久化。
常见错误与对策:仅用 PtH 可能被 Restricted Admin Mode 或 Credential Guard 拦截,应配合 Kerberoasting 作为备份;无筛选的 Kerberoasting 会产生大量无用票据增加暴露风险,应借助 BloodHound 锁定关键服务账户;忽略离线破解会直接触发 IDS,应导出哈希并利用 GPU 加速的 hashcat 离线处理;攻击后未清理 Mimikatz DLL 和服务票据会留下痕迹,应执行 sekurlsa::close 并删除临时文件。
防御建议:为服务账户强制复杂密码或托管服务账户(MSA),在 Windows 主机上启用 Credential Guard,禁用 Restricted Admin Mode,监控 powershell.exe -enc 等可疑进程以及异常的 Kerberos 票据请求,并定期进行包含 PtH 和 Kerberoasting 的红队演练。
GitHub
#开发者 #工具 #红队 #渗透测试 #ActiveDirectory #密码哈希 #Kerberos #Mimikatz #hashcat #BloodHound
@DevToolboxHub