关于
基于Python的BloodHound插件
BloodHound是一款可视化图形分析域环境关系的工具,将域内用户、计算机、组、Sessions、ACLs等信息以图和线的方式直观展现,便于红队人员便捷理解和分析域内情况。
BloodHound.py
BloodHound.py是一个基于Python的BloodHound插件,基于Impacket。
此版本的BloodHound.py仅与BloodHound 4.2和4.3兼容。对于BloodHound CE,请查看BloodHound CE分支
限制
BloodHound.py目前有以下限制:
- 支持大多数,但不是所有的BloodHound(SharpHound)功能。目前不支持本地组,所有其他收集方法都已实现。
安装和使用
您可以使用pip install bloodhound
通过pip安装Ingram,或者通过克隆此存储库并运行python setup.py install
,或者使用pip install .
。BloodHound.py需要impacket
、ldap3
和dnspython
才能正常工作。
安装将添加一个命令行工具bloodhound-python
到您的PATH。
要使用Ingram,您至少需要登录到的域的凭据。您需要使用此域的用户名指定-u
选项(或对于受信任域中的用户指定username@domain
)。如果您的DNS设置正确,并且AD域在您的DNS搜索列表中,则BloodHound.py将自动为您检测该域。如果没有,您必须使用-d
选项手动指定它。
默认情况下,BloodHound.py将查询LDAP和域中的各个计算机,以枚举用户、计算机、组、信任、会话和本地管理员。如果要限制收集,请指定--collectionmethod
参数,该参数支持以下选项(类似于SharpHound):
- 默认-执行组成员身份收集、域信任收集、本地管理员收集和会话收集
- Group -执行组成员资格收集
- LocalAdmin -执行本地管理员收集
- RDP -执行远程桌面用户收集
- DCOM -执行分布式COM用户集合
- 容器-执行容器收集(容器/组织单位/默认容器)
- PSRemote -执行远程管理(PS Remoting)用户集合
- DCOnly -仅从DC查询所有收集方法,无需连接到成员主机/服务器。这等于Group、Acl、Trusts、ObjectProps、Container
- Session -执行会话收集
- ACL -执行ACL收集
- 信任-执行域信任枚举
- LoggedOn -执行特权会话枚举(需要目标上的本地管理员)
- ObjectProps -为属性(如LastList或PwdLastSet)执行对象属性集合
- All -列出上述所有方法,LoggedOn除外
- 实验性-连接到各个主机,以枚举可能已存储凭据的服务和计划任务
多个collectionmethod应该用逗号分隔,例如:-c Group,LocalAdmin
您可以覆盖某些自动检测选项,例如,如果要使用不同的域控制器,请使用-dc
覆盖主域控制器的主机名,或者使用-gc
指定您自己的全局编录。
Docker使用
- 构建容器
docker build -t bloodhound .
- 运行容器
docker run -v ${PWD}:/bloodhound-data -it bloodhound
之后,您可以在容器内运行bloodhound-python
,所有数据将存储在您启动容器的路径中。
项目地址
https://github.com/coleak2021/evilhiding
原文始发于微信公众号(SecHub网络安全社区):Py版内网信息收集神器BloodHound
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论