Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Max — BloodHound 工具套件,支持域密码审计、权限路径分析、边缘操作和自定义 Cypher 查询,以最大化 Active Directory 攻击面映射。 | Kitploit
工具/GitHubGitHub/knavesec/max
信息收集渗透测试
GitHubknavesec/max

Max

BloodHound 工具套件,支持域密码审计、权限路径分析、边缘操作和自定义 Cypher 查询,以最大化 Active Directory 攻击面映射。

查看仓库
53565461年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

利用一套简单的工具最大化 BloodHound

描述

新版本发布:

  • dpat - BloodHound 域密码审计工具 (DPAT)

一套简单的工具:

  • get-info - 从 Neo4j 数据库中提取信息列表
  • mark-owned - 将对象列表标记为已控制
  • mark-hvt - 将对象列表标记为高价值目标
  • query - 运行原始 Cypher 查询并返回输出
  • export - 将域对象的所有出站控制权限导出为 CSV 文件
  • del-edge - 从数据库中删除一条边
  • add-spns - 创建 HasSPNConfigured 关系,一种新的攻击原语
  • add-spw - 创建 SharesPasswordWith 关系
  • dpat - BloodHound 域密码审计工具 (DPAT)
  • pet-max - Dogsay,为紧张的工作带来快乐

本工具已在以下博客文章中发布,并附有截图和使用案例:Max 发布、更新与基元 和 DPAT

在我研究期间,本工具新增了一种潜在的攻击原语,详情请参见 add-spns 部分。

使用方法

安装

理想情况下,安装应该很简单,不过我还是附带了一个 requirements.txt 文件以备不时之需。已在 Kali Linux 和 Windows 10 上测试,所有功能在 Linux 和 Windows 操作系统上均能正常工作。

pip3 install -r requirements.txt

Neo4j 凭据

Neo4j 凭据可以硬编码在脚本开头,可以作为 CLI 参数提供,也可以存储为环境变量。如果某个参数留空,程序会提示输入用户名/密码。使用环境变量时,最简单的方法是在 ~/.bashrc 或 ~/.zshrc 中添加一行(例如 export NEO4J_USERNAME='neo4j')来存储用户名,因为它并不敏感。数据库密码可以在运行 Max 之前通过 shell 标签页设置。在 export 命令前添加空格可以防止其出现在历史记录中。

root@kitploit:~
 export NEO4J_PASSWORD='bloodhound' # Notice whitespace before 'export'
python3 max.py {module} {args}

root@kitploit:~
python3 max.py -u neo4j -p neo4j {module} {args}
root@kitploit:~
python3 max.py {module} {args}
Neo4j Username: neo4j
Neo4j Password:

快速使用

获取常规帮助以及模块特定帮助

root@kitploit:~
python3 max.py -h
python3 max.py {module} -h

将已控制对象导入 BH

root@kitploit:~
python3 max.py mark-owned -f owned.txt
python3 max.py mark-owned -f owned.txt --add-note "Owned by repeated local admin"

获取用户列表

root@kitploit:~
python3 max.py get-info --users
python3 max.py get-info --users --enabled

[email protected]
[email protected]
...

获取目标组中的对象列表

root@kitploit:~
python3 max.py get-info --group-members "domain [email protected]"

获取用户拥有管理权限的计算机列表

root@kitploit:~
python3 max.py get-info --adminto [email protected]

获取已控制对象列表及其备注

root@kitploit:~
python3 max.py get-info --owned --get-note

运行查询 - 返回所有与域管理员存在路径的用户列表

root@kitploit:~
python3 max.py query -q "MATCH (n:User),(m:Group {name:'DOMAIN [email protected]'}) MATCH (n)-[*1..]->(m) RETURN DISTINCT(n.name)"

从数据库中删除一条边

root@kitploit:~
python3 max.py del-edge CanRDP

使用 BloodHound 中存储的信息或 GetUserSPNs impacket 文件添加 HasSPNConfigured 关系

root@kitploit:~
python3 max.py add-spns -b
python3 max.py add-spns -i getuserspns-raw-output.txt

DPAT

root@kitploit:~
python3 max.py dpat -n ~/client/ntds.dit -c ~/.hashcat/hashcat.potfile -o ouputdir --html --sanitize

宠物 Max

root@kitploit:~
python3 max.py pet-max

对象文件与规范

文件中的对象必须包含 FQDN,大小写不敏感。当提供 CLI 用户名/计算机名时同样适用。

root@kitploit:~
[email protected]      <- 将被添加 / 正确的 CLI 输入
[email protected]     <- 将被添加 / 正确的 CLI 输入
computer01.domain.local  <- 将被添加 / 正确的 CLI 输入
ComPutEr01.doMAIn.LOcaL  <- 将被添加 / 正确的 CLI 输入
user02                   <- 不会被添加 / 错误的 CLI 输入
computer02               <- 不会被添加 / 错误的 CLI 输入

后续工作

我希望加入一个 analyze 功能,以提供类似 PlumHound/Cypheroth 的某些功能。最后,考虑为在 Windows 上运行 Neo4j 的用户创建一个 PowerShell 版本,但我的 PowerShell 水平很差,所以待定。

欢迎任何其他功能和改进,请在 BloodHoundGang Slack 频道和 Twitter 上找我 @knavesec

贡献者

特别感谢以下人员为本工具的开发和改进付出的时间:

  • Nic Losby @blurbdust(DPAT 模块)
  • Scott Brink @_sandw1ch(多方面贡献)
  • Logan @TheToddLuci0(众多 PR)
下载工具