用户
搜索

该用户从未签到

i春秋作家

Rank: 7Rank: 7Rank: 7

3

主题

32

帖子

186

魔法币
收听
0
粉丝
1
注册时间
2018-10-30

i春秋签约作者

发表于 2021-1-28 14:25:08 710115
本帖最后由 baibaib 于 2021-2-1 11:34 编辑

BloodHound简介

BloodHound以用图与线的形式,将域内用户、计算机、组、Sessions、ACLs以及域内所有相关用户、组、计算机、登陆信息、访问控制策略之间的关系更直观的展现在Red Team面前进行更便捷的分析域内情况,更快速的在域内提升自己的权限。它也可以使Blue Team成员对己方网络系统进行更好的安全检测及保证域的安全性。
BloodHound通过在域内导出相关信息,在将数据收集后,将其导入Neo4j数据库中,进行展示分析。Neo4j是一款NOSQL图形数据库,它将结构化数据存储在网络上而不是表中,Bloodhound正是利用这种特性加以合理分析,可以更加直观的将数据以节点空间”来表达相关数据。

1:安装Neo4j数据库

[C] 纯文本查看 复制代码
下载地址:[url]https://neo4j.com/download-center/#community[/url]


BloodHound是依赖于Neo4j数据库的,所以开始先安装Neo4jNeo4j需要安装最新JDK,如果不是最新JDK那么将会报错


1.png

下载完成之后输入neo4j console开启neo4j,下面会提示web访问点。


2.png

[C] 纯文本查看 复制代码
登陆后台http://localhost:7474
URL为:neo4j://localhost:7687
用户名默认为:neo4j
密码默认为:neo4j


3.png

首次登录需要密码,这里我修改为123456,修改之后可以直接登录进入

4.png

5.png

接着下载下载BloodHound:https://github.com/BloodHoundAD/BloodHound/releases。如果是kali的话,可以不用下载直接使用apt-get就可以安装,BloodHound依赖于neo4j,所以neo4j也会安装。
[C] 纯文本查看 复制代码
apt-get update

apt-get install bloodhound


这里我是在kali开启neo4j,本机使用BloodHound连接,所以需要配置neo4j的配置文件,让其可以让其他的地址连接。

6.png

7.png

界面左上角是菜单按钮和搜素栏。三个选项卡分别是数据库信息(Database Info)、节点信息(Node Info)和查询(Queries)。数据库信息选显卡中显示了所分析域的用户数量、计算机数量、组数量、会话数量、ACL数量、关系等信息,用户可以在此处执行基本的数据库管理操作,包括注销和切换数据库,以及清除当前加载的数据库。节点信息选项卡中显示了用户在图表中单击的节点的信息。查询选项卡中显示了BloodHound预置的查询请求和用户自己构建的查询请求。
界面左上角是设置区。
  • 第一个是刷新功能,BloodHound将重新计算并绘制当前显示的图形;
  • 第二个是导出图形功能,可以将当前绘制的图形导出为JSON或PNG文件;
  • 第三个是导入图形功能,可以导入JSON文件;
  • 第四个是上传数据功能,BloodHound将对上传的文件进行自动检测,然后获取CSV格式的数据;
  • 第五个是更改布局类型功能,用于在分层和强制定向图布局之间切换;
  • 第六个是设置功能,可以更改节点的折叠行为,以及在不同的细节模式之间切换。



8.png

采集数据

在使用BloodHound进行分析时,需要调用来自活动目录的三条信息:
  • 哪些用户登录了哪些机器?
  • 哪些用户拥有管理员权限?
  • 哪些用户和组属于哪些组?

BloodHound需要的这三条信息依赖于PowerView.ps1脚本的BloodHoud。BloodHoud分为两部分。
  • PowerShell采集器脚本,有两个版本
    • 旧的版本叫做BloodHound_Old.ps1
    • 新版本叫做SharpHound.ps1
  • 可执行文件SharpHound.exe

地址:https://github.com/BloodHoundAD/BloodHound/tree/master/Ingestors

9.png

使用SharpHound.exe提取域内信息。

[C] 纯文本查看 复制代码
SharpHound.exe -c all


执行之后会在当前目录生成 时间戳_BloodHound.zip 的文件


10.png

联动CobaltStrike

官网地址:https://github.com/BloodHoundAD/BloodHound/CS插件地址:https://github.com/C0axx/AggressorScripts

也可也通过sharpbound.exe和ps1单独使用(execute-assembly、powershell-import)
导入插件,快速导入并且下载bloodhound的json文件

11.png

12.png


运行之后,他就会下载zip到CS服务器上面,接着把它下载到本地服务器即可

13.png

接着导入zip到bloodhound里面就可以通过各种关系寻找路线攻击域管理员或者某台特定的机器了
寻找攻击域管理员最短路径
然后到BloodHound上传数据,点最右边第四个上传按钮,把所有json文件上传即可,也可以直接上传压缩包。


14.png

15.png

上传完成之后可以看到如图,该内网有743个用户、551台主机、284个组,266个sessions,16946条ACLs、23729个关系。


16.png

查询信息
进入查询模块,可以看到预定义的12个常用查询条件


17.png

  • Find all Domain Admins:查询所有域管理员
  • Find Shortest Paths to Domain Admins:查找到达域管理员的最短路径
  • Find Principals with DCSync Rights:查找具有DCSync权限的主体
  • Users with Foreign Domain Group Membership:具有外部域组成员身份的用户
  • Groups with Foreign Domain Group Membership:具有外部域组成员身份的组
  • Map Domain Trusts:映射域信任
  • Shortest Paths to Unconstrained Delegation Systems:无约束委托系统的最短路径
  • Shortest Paths from Kerberoastable Users:Kerberoastable用户的最短路径
  • Shortest Paths to Domain Admins from kerberoastable Users:从Kerberoathable用户到域管理员的最短路径
  • Shortest Path from Owned Principals:拥有主体的最短路径
  • Shortest Paths to Domain Admins from Owned Principals:从所属主体到域管理员的最短路径
  • Shortest Paths to High Value Targets:高价值目标的最短路径


使用技巧
  • 绿色用户头像:用户
  • 三个黄色头像:用户在
  • 红色小电脑:计算机
  • 绿色小地球:域


并且可以右击连接的线条来进行帮助查看

18.png

19.png

Find all Domain Admins:查询所有域管理员,这里存在有3个域管理员

20.png

Find Shortest Paths to Domain Admins:查找到达域管理员的最短路径,最右边的就是管理员组了。用户连接小电脑有一个HasSession








21.png

并且用户到电脑也有AdminTo和CanRDP的连接。右击help还可以查看到攻击手法。AdminTo就是这台电脑的本地本地管理员了。

22.png

Find Principals with DCSync Rights:查找具有DCSync权限的主体可以看到箭头上有两个明显标志:GetChangesAll(DS-Replication-Get-Changes-All)和GetChanges(DS-Replication-Get-Changes)

23.png
还有就是下面这图,如果这个组对这个与具有WriteDacl权限的话,那么就可以修改ACL来对这个域dcsync攻击了
[C] 纯文本查看 复制代码
#添加ACE的命令如下:
Add-DomainObjectAcl -TargetIdentity "DC=test,DC=com" -PrincipalIdentity test1 -Rights DCSync -Verbose

lsadump::dcsync /domain:test.com /all /csv

#删除ACE的命令:
Remove-DomainObjectAcl -TargetIdentity "DC=test,DC=com" -PrincipalIdentity test1 -Rights DCSync -Verbose



3gstudent博客有些到如何dcsync攻击


[C] 纯文本查看 复制代码
https://3gstudent.github.io/3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-DCSync/


clipboard.png

Shortest Paths to Unconstrained Delegation Systems:无约束委托系统的最短路径。效果图如下

24.png

可以找到有一个GenricWrite。代表该用户对这个机器有写入的权限。也就是可以造成资源委派

25.png

点击help,这里有对计算机对象的一般写入可用于执行基于资源的受限委派攻击。获取这个用户之后可以打资源委派。

26.png

Map Domain Trusts:映射域信任。这里有两个域,他们都双向信任的域

27.png

点击任图中任意用户,可以查看该用户Name、DisPlayName、最后修改密码时间、最后登陆时间、该用户登陆在那台计算机存在Session,是否启动、属于那些组、拥有那些机器的本地管理员权限、对访问对象对控制权限等,BloodHound可以将这些以图表对形式展示出来,方便Pentester更快对进行横向渗透,提升权限。


28.png


点击任意计算机,可以看到该计算机在域内名称、系统版本、是否启用、是否允许无约束委托、该计算机存在多少用户的session信息、同一个OU中的相似对象、查看该计算机在那些域树中、存在多少个本地管理员、组关系,对ACL的控制权限。


29.png


还有很多不会不懂的哈哈哈!希望小伙伴们多点和我交流交流哈哈!
发表于 2021-1-28 14:29:41
村长来顶顶
让我们一起干大事!
有兴趣的表哥加村长QQ:780876774!
使用道具 举报 回复
感谢分享
使用道具 举报 回复
发表于 2021-1-28 15:31:34
最近正好缺少这么一个用来可视化工具
使用道具 举报 回复
发表于 2021-1-28 15:32:01
说到红队了,今年hw是什么时候开始撒
使用道具 举报 回复
发表于 2021-1-28 15:52:25

哈哈哈为啥我没有村长这个表情的哈哈哈哈哈
使用道具 举报 回复
发表于 2021-1-28 17:39:12
微信图片_20210128173847.png 这里~
让我们一起干大事!
有兴趣的表哥加村长QQ:780876774!
使用道具 举报 回复
发表于 2021-1-29 15:36:20
使用道具 举报 回复
发新帖
您需要登录后才可以回帖 登录 | 立即注册