拿到域内一台机器的权限后,下一步不是直接攻击域控,而是摸清整个域的拓扑结构。域信息收集的质量直接决定后续渗透的效率和成功率。
PowerView 是 PowerSploit 框架中的域信息收集模块,通过 LDAP 查询实现域内侦察。它是理解 BloodHound 底层原理的基础。
BloodHound 是一款基于图数据库的 Active Directory 攻击路径可视化工具,由 SharpHound(采集端) 和 BloodHound(分析端) 两部分组成。
| AdminTo — A 是 B 的本地管理员 | MemberOf — A 是组 B 的成员 |
| GenericAll — A 对 B 有完全控制 | GenericWrite — A 可写 B 的属性 |
| WriteDacl — A 可修改 B 的 DACL | WriteOwner — A 可更改 B 的所有者 |
| ForceChangePassword — A 可强制修改 B 的密码 | AddMember — A 可向组 B 添加成员 |
| DCSync — A 可复制 AD 数据(域管权限) | HasSession — A 在 B 上有登录会话 |
SharpHound 是 BloodHound 的数据采集器,有多种运行方式和采集模式。
将 SharpHound 采集的 ZIP 文件导入 BloodHound 后,即可进行图形化攻击路径分析。
BloodHound 左侧面板提供了大量预定义查询,一键即可发现攻击路径。以下是最常用的查询:
BloodHound 底层是 Neo4j 数据库,可以直接编写 Cypher 查询进行高级分析。
以下演示一个典型的内网域渗透侦察流程,展示 BloodHound 如何帮助快速定位攻击路径。
SharpHound 会产生大量 LDAP 查询和 SMB 连接,容易被蓝队检测到。以下是一些降低噪声的技巧。