如何使用Autobloody自动利用BloodHound显示的活动目录提权路径
2022-12-29 19:28:38 Author: FreeBuf(查看原文) 阅读量:14 收藏

 关于Autobloody 

Autobloody是一款针对活动目录的安全审查工具,在该工具的帮助下,广大研究人员可以通过自动化的形式利用BloodHound扫描发现的活动目录提权路径来实现权限提升。

如果BloodHound数据库中存在两个对象之间的提权路径,那么该工具将会以自动化的形式通过这两个活动目录对象,即源对象(我们拥有的)和目标对象(我们想要的)来实现权限提升。工具的自动化操作分为两个步骤:

1、使用BloodHound数据和Neo4j查询来寻找最佳的权限提升路径;

2、使用bloodyAD包执行搜索到的提权路径;

Autobloody基于bloodyAD实现其功能,而这个包支持使用明文密码、pass-the-hash、pass-the-ticket和证书来进行身份验证,并可以绑定到域控制器的LDAP服务以执行活动目录权限提升。

 工具依赖 

bloodyAD

Neo4j python 驱动器

Neo4j(带GDS库

BloodHound

Python 3

Gssapi (linux) 或Winkerberos (Windows)

 工具安装 

该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。

如果你使用的是Linux设备的话,你还要在自己的操作系统中安装libkrb5-dev以确保Kerberos能够正常运行。

Debian/Ubuntu/Kali:

apt-get install libkrb5-dev

Centos/RHEL:

yum install krb5-devel

Fedora:

dnf install krb5-devel

Arch Linux:

pacman -S krb5

接下来,我们可以使用pip命令来直接安装Autobloody:

pip install autobloody

或者使用下列命令将该项目源码克隆至本地,并执行安装脚本:

git clone --depth 1 https://github.com/CravateRouge/autobloodypip install .
(向右滑动、查看更多)

 工具使用 

首先,我们必须将相关数据导入到BloodHound中(例如使用SharpHound或BloodHound.py),然后Neo4j也必须同时运行起来。

注意:-ds和-dt值是大小写敏感的。

工具使用样例

autobloody -u john.doe -p 'Password123!' --host 192.168.10.2 -dp 'neo4jP@ss' -ds 'JOHN.DOE@BLOODY.LOCAL' -dt 'BLOODY.LOCAL'
(向右滑动、查看更多)

工具帮助信息

[bloodyAD]$ ./autobloody.py -husage: autobloody.py [-h] [--dburi DBURI] [-du DBUSER] -dp DBPASSWORD -ds DBSOURCE -dt DBTARGET [-d DOMAIN] [-u USERNAME] [-p PASSWORD] [-k] [-c CERTIFICATE] [-s] --host HOSTAD Privesc Automationoptions:  -h, --help             显示工具帮助信息和退出  --dburi DBURI         运行Neo4j的主机 (默认为 "bolt://localhost:7687")  -du DBUSER, --dbuser DBUSER                        Neo4j用户名 (默认为 "neo4j")  -dp DBPASSWORD, --dbpassword DBPASSWORD                        Neo4j密码  -ds DBSOURCE, --dbsource DBSOURCE                        源节点标签,大小写敏感  -dt DBTARGET, --dbtarget DBTARGET                        目标节点标签,大小写敏感  -d DOMAIN, --domain DOMAIN                        用于NTLM身份认证的域  -u USERNAME, --username USERNAME                        用于NTLM身份认证的用户名  -p PASSWORD, --password PASSWORD                        用于NTLM身份认证明文密码或LMHASH:NTHASH  -k, --kerberos  -c CERTIFICATE, --certificate CERTIFICATE                        身份验证证书,例如 "path/to/key:path/to/cert"  -s, --secure           尝试通过TLS使用LDAP,即LDAPS (默认为 LDAP)  --host HOST           域控制器的主机名或IP (例如: my.dc.local or 172.16.1.3)
(向右滑动、查看更多)

 工具限制 

当前版本的Autobloody只能支持下列BloodHound边缘的自动化利用:

MemberOf

ForceChangePassword

AddMembers

AddSelf

DCSync

GetChanges/GetChangesAll

GenericAll

WriteDacl

GenericWrite

WriteOwner

Owns

Contains

AllExtendedRights

 许可证协议 

本项目的开发与发布遵循MIT开源许可证协议。

 项目地址 

Autobloody

https://github.com/CravateRouge/autobloody

参考资料:

https://github.com/CravateRouge/bloodyAD

https://neo4j.com/docs/graph-data-science/current/installation/

精彩推荐


文章来源: http://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2651212151&idx=4&sn=bc08a1267d50fae350e563b3715ae017&chksm=bd1ddbfc8a6a52ea82efc57ab38321b3bcd72104224beb40f2ba0836c8bc8414e4392bf25dba#rd
如有侵权请联系:admin#unsafe.sh