SuperAPI AI 工具集

bloodhound-enum

安全与审计

查看项目

更新于 10-16 04:41

技能介绍

用途

BloodHound.py 是 BloodHound 的 Python 采集器,用于对 Active Directory(AD)进行信息采集。其核心优势包括:无需在目标执行(通过 LDAP/DNS 远程采集)、全面覆盖(用户/组/计算机/会话/ACL/信任关系)、JSON 输出(可导入 BloodHound GUI 分析攻击路径)。

项目地址:https://github.com/dirkjanm/BloodHound.py

主要能力

采集内容涵盖域内用户、组、计算机、会话、ACL 以及信任关系,用于分析域内攻击路径。采集结果以 JSON 或 ZIP 形式输出,可导入 BloodHound GUI 进行可视化分析。

使用方式

Phase 1: 基本采集

全量采集(最常用):

bloodhound-python -d corp.local -u user -p 'P@ssw0rd' -c All

指定域控 IP:

bloodhound-python -d corp.local -u user -p 'P@ssw0rd' -c All -dc 10.0.0.1

指定 DNS 服务器:

bloodhound-python -d corp.local -u user -p 'P@ssw0rd' -c All -ns 10.0.0.1

输出压缩包:

bloodhound-python -d corp.local -u user -p 'P@ssw0rd' -c All --zip

Phase 2: 认证方式

密码认证:

bloodhound-python -d corp.local -u user -p 'P@ssw0rd' -c All

NTLM Hash 认证(Pass the Hash):

bloodhound-python -d corp.local -u user --hashes aad3b435b51404eeaad3b435b51404ee:hash -c All

Kerberos 认证:

bloodhound-python -d corp.local -u user -p 'P@ssw0rd' -c All -k

使用 ccache 票据:

export KRB5CCNAME=/tmp/krb5cc_user
bloodhound-python -d corp.local -u user -c All -k --auth-method kerberos

Phase 3: 采集方式选择

默认采集(Group + LocalAdmin + Session + Trusts):

bloodhound-python -d corp.local -u user -p pass -c Default

仅采集组成员关系:

bloodhound-python -d corp.local -u user -p pass -c Group

仅采集本地管理员:

bloodhound-python -d corp.local -u user -p pass -c LocalAdmin

仅采集会话信息:

bloodhound-python -d corp.local -u user -p pass -c Session

ACL 采集(分析权限关系):

bloodhound-python -d corp.local -u user -p pass -c ACL

信任关系:

bloodhound-python -d corp.local -u user -p pass -c Trusts

Phase 4: 导入与分析

采集完成后将 JSON/ZIP 文件导入 BloodHound GUI:

# 启动 Neo4j(BloodHound 后端)
sudo neo4j start

打开 BloodHound GUI,拖拽 JSON/ZIP 文件导入。常用查询包括:

  • Find all Domain Admins
  • Shortest Path to Domain Admins
  • Find Kerberoastable Users
  • Find AS-REP Roastable Users

适用场景

渗透测试中针对 Active Directory 的信息采集与攻击路径分析。常见场景与命令对应如下:

场景 命令
全量采集 bloodhound-python -d corp.local -u user -p pass -c All --zip
PTH 采集 bloodhound-python -d corp.local -u user --hashes LM:NT -c All
仅 ACL 分析 bloodhound-python -d corp.local -u user -p pass -c ACL
指定 DC bloodhound-python -d corp.local -u user -p pass -c All -dc 10.0.0.1 -ns 10.0.0.1

限制

资料未提供关于运行环境依赖、版本要求、采集性能或权限限制的更多说明,暂未提供。