autobloody 实战演练从普通域用户到域管理员的自动化提权完整案例【免费下载链接】autobloodyTool to automatically exploit Active Directory privilege escalation paths shown by BloodHound项目地址: https://gitcode.com/gh_mirrors/au/autobloodyautobloody 是一款专为 Active Directory 环境设计的自动化提权工具它能够读取 BloodHound 数据库中的攻击路径数据自动规划并执行从普通域用户到域管理员的完整提权链条。本教程将从零开始带你完成 autobloody 环境搭建、安装配置并通过一个真实的实战案例演示如何用一条命令实现 AD 提权自动化让复杂的域渗透路径利用变得简单、快速、可复现。autobloody 是什么为什么安全测试需要它️在日常的 Active Directory 安全评估中安全人员最头疼的事情之一就是 BloodHound 明明已经画出了攻击路径却需要手动逐条执行每一个提权步骤——改 ACL、加组成员、改密码……不仅耗时还容易出错。autobloody 正是为了解决这个痛点而生的。它的核心功能是自动读取路径从 Neo4jBloodHound 的数据库中查询提权路径智能选路使用 Dijkstra 最短路径算法找到代价最低、最隐蔽的提权路线⚡一键执行自动连接域控并逐步执行所有提权操作全程无需人工干预自动清理除改密码和设置属主外其余可逆操作执行完成后自动还原现场两大核心步骤autobloody 的工作流程非常清晰整个过程分为两步找路通过 BloodHound 数据和 Neo4j 查询找出最优提权路径执行借助 bloodyAD 组件连接域控 LDAP 服务自动执行路径上的每一个攻击动作这也意味着autobloody 的认证方式非常灵活支持明文密码、Pass-the-Hash哈希传递、Pass-the-Ticket票据传递以及证书认证覆盖了主流的域内认证场景。实战前的环境准备清单 在开始自动化提权之前我们需要搭建一套完整的测试环境建议在授权的靶场或实验域中进行组件作用说明BloodHound攻击路径分析用于展示域内提权路径关系图Neo4j图形数据库存储 BloodHound 收集的节点与边数据SharpHound / bloodhound.py数据收集器将 AD 中的用户、组、ACL 等信息采集入库一台域控 (DC)提权目标环境autobloody 通过 LDAP 连接它执行操作Python 3运行环境autobloody 依赖 Python 3 运行小提示为了让路径计算更快建议在 Neo4j 中安装 GDSGraph Data Science图算法插件。如果没有安装也不用担心autobloody 会自动降级使用原生 CYPHER 查询只是速度稍慢功能完全不受影响。另外别忘了先把域内的数据导入 BloodHound并确保 Neo4j 服务正在运行——这是整个自动化流程的数据基础。一键安装步骤3 分钟完成部署 autobloody 的安装非常简单推荐直接使用 pip 安装pip install autobloody当然如果你希望体验最新代码也可以克隆仓库后本地安装git clone --depth 1 https://gitcode.com/gh_mirrors/au/autobloody pip install .安装完成后在终端输入autobloody -h即可查看完整的帮助信息所有参数一目了然具体参数说明可以在 autobloody/main.py 源码中查看。完整实战案例普通域用户 → 域管理员 下面我们进入最激动人心的环节——用一个真实的实战案例演示 autobloody 如何帮助一名普通域用户完成到域管理员的自动化提权。场景设定起点源对象JOHN.DOEBLOODY.LOCAL——我们掌握的一个普通域用户终点目标对象BLOODY.LOCAL——整个域即域管理员权限BloodHound 数据库中已经存在从 JOHN.DOE 到域的提权路径例如通过组成员关系、ACL 滥用等边连接第一步查询提权路径autobloody 会首先连接 Neo4j利用 GDS 的 Dijkstra 算法在图中寻找源节点到目标节点的最短代价最低路径。这一步只需要指定 Neo4j 的连接信息和源、目标节点的名称autobloody --host 192.168.10.2 -dp neo4jPss \ -ds JOHN.DOEBLOODY.LOCAL -dt BLOODY.LOCAL⚠️重点提醒-ds源节点和-dt目标节点的值是大小写敏感的必须与 BloodHound 中的 name 属性完全一致否则会提示找不到路径。执行后autobloody 会输出类似这样的信息[] Done, 3 edges have been found between JOHN.DOEBLOODY.LOCAL and BLOODY.LOCAL表示找到了 3 条边组成的提权链路。第二步模拟执行安全预览autobloody 默认不会直接动手而是先进入模拟模式把将要执行的每一个操作清晰列出来例如[] [Membership] on group Domain Admins for JOHN.DOE [] [Add DCSync right] to BLOODY.LOCAL这个功能非常适合在正式执行前评估攻击影响确认无误后输入y即可继续。这一逻辑可以在 autobloody/automation.py 中看到实现细节。第三步一键自动化提权如果对预览结果满意也可以加上-y参数跳过确认直接全自动执行autobloody --host 192.168.10.2 -dp neo4jPss \ -ds JOHN.DOEBLOODY.LOCAL -dt BLOODY.LOCAL \ -d BLOODY.LOCAL -u john.doe -p Password123! -y执行过程中autobloody 会自动完成添加组成员、修改 ACL、重置密码等一系列操作并在必要时自动切换身份例如通过 ForceChangePassword 拿到目标账号密码后无缝切换为该账号继续后续步骤。当路径走到 DCSync 环节时工具会提示你可以使用 secretsdump.py 直接导出 NTDS 数据库彻底掌控整个域。最后输出[] Done, attack path executed宣告提权成功第四步自动清理现场值得一提的是autobloody 会在执行过程中记录所有可逆操作如添加组成员、授予 GenericAll 权限等并在攻击路径完成后自动回滚最大限度减少对生产环境的干扰。这个污点清理机制同样实现在 autobloody/automation.py 中。autobloody 的工作原理最短路径算法解析 也许你会好奇autobloody 是如何在复杂的域权限关系图中找到那条最划算的提权路径的答案藏在 autobloody/database.py 中。BloodHound 数据库中的每一条边如 MemberOf、GenericAll、WriteOwner本身没有权重但它们的攻击代价是不同的。autobloody 会为不同类型的边和节点赋予不同的代价bloodycost例如MemberOf加入组代价为 0纯查询无副作用DCSync / GenericAll直达域代价为 1收益最高、代价最低ReadGMSAPassword读取密码代价为 10ForceChangePassword改密码代价较高可能影响业务然后利用Dijkstra 算法在加权图上计算源节点到目标节点的最短路径从而找到代价最小、最隐蔽的攻击链路。这正是自动化提权的精髓——不再靠人工肉眼在 BloodHound 图上找路而是让算法帮我们选出最优解。支持的提权边一览 目前 autobloody 已支持以下 BloodHound 边的自动利用类别支持的边组成员类MemberOf、AddMembers、AddSelf凭据获取类ForceChangePassword、ReadGMSAPassword、DCSyncACL 滥用类GenericAll、GenericWrite、WriteDacl、WriteOwner、Owns、AllExtendedRights其他GetChanges/GetChangesAll、Contains如果你用 BloodHound 找到了路径但 autobloody 提示路径不可利用通常是因为路径中包含了尚未支持的边类型需要借助其他工具手动完成该环节。常见问题与实战技巧 1. 路径查询太慢怎么办给 Neo4j 安装 GDS 插件可以显著提速autobloody 会自动检测插件是否存在并切换算法实现。2. 通过 proxychains 使用时连不上 Neo4jautobloody 内置了代理绕过机制见 autobloody/proxy_bypass.py在 Linux/macOS 下会自动识别 proxychains 环境并绕过代理直连 Neo4j避免不必要的网络干扰。3. 连接超时如何调整默认连接超时为 60 秒网络环境不佳时可以通过--timeout参数适当调大例如--timeout 120。4. 想要更多日志输出使用-v输出 INFO 级别日志使用-vv输出 DEBUG 级别日志方便排查问题。更多用法细节可参考项目根目录的 README.md。写在最后 ✍️autobloody 将 Active Directory 提权从手工活变成了一条命令让安全测试人员可以把精力聚焦在路径分析与风险判断上而不是机械地执行攻击步骤。当然请务必牢记本文所有内容仅限在授权的测试环境中使用任何未经授权的利用行为都是违法的。希望这篇 autobloody 实战演练能帮你快速上手这款优秀的自动化提权工具。如果觉得有用欢迎收藏转发也欢迎在实际项目中验证这套完整提权流程【免费下载链接】autobloodyTool to automatically exploit Active Directory privilege escalation paths shown by BloodHound项目地址: https://gitcode.com/gh_mirrors/au/autobloody创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考