用BloodHound FOSS修复常见AD安全问题

提升AD安全性包括在允许黑客进入的环境中修复安全漏洞-但防御者首先需要确定这些漏洞是什么,而AD 的内置工具却使查看何种用户对何种系统和对象所获得的权限并不容易。如此多的安全问题,甚至其中一些非常危险,就这样被忽视了。

幸运的是,对防御者来说一些常见的 AD 安全问题一旦被识别出来就很容易修复。这些“唾手可得”的问题使防御者能够相对容易地降低其 AD 环境的暴露风险。以下是 AD 环境中三个最常见的安全问题,包括它们的影响以及防御者如何找到和修复它们。

我将使用BloodHound来进行演示,BloodHound 是一个免费的开源工具(我是共同开发者之一),用于映射 Microsoft Active Directory 和 Azure Active Directory,但您可以使用其他工具执行相同的步骤。

具有高级权限的 Kerberoastable 用户

Kerberoast(一种网络密码验证授权系统)攻击由安全研究员 Tim Medin于2014年首次确认。该攻击从AD中提取服务帐户证书的哈希值进行离线破解,并且可以由任何用户执行而无需向目标发送数据包。当目标环境中的高级权限用户暴露出易受这种攻击的漏洞时,被破解的帐户证书哈希值会给黑客提供一条夺取AD控制权的捷径。我和我的同事在我们检测的所有真实AD 环境中都发现了这个问题。

拥有高级权限用户在Kerberoasting上的漏洞会引发很大的安全风险,但仅使用 AD 的内置工具很难识别这些易受攻击的高级权限用户,这是因为 AD 无法凭经验确定任何用户的权限。AD 的界面不允许用户“打开”安全组的成员,并且组和组之间的嵌套使得跟踪具有特定权限级别的个别用户耗时又困难,也很容易出错并且造成遗漏。

在FOSS BloodHound中,这个过程要简单得多。使用FOSS BloodHound底部的“原始查询”栏可以显示最高风险的 kerberoastable 用户。

MATCHp=shortestPath((u:User {hasspn:true})-[*1..]->(g:Group))
WHEREg.objectidENDSWITH'-512'
RETURNp
LIMIT100

这将返回一个可视界面,展示这些Kerberoastable的高级权限 用户创建的攻击路径。此示例中的每个起始用户节点(屏幕左侧的绿色图标)都是 Kerberoastable 用户:

目标组是靠右边的黄色图标。如您所见,针对敌对目标,该组有许多可能的攻击路径可以选择。

为了关闭这些攻击路径,需要从Kerberoasting中保护每个易受攻击的用户(我建议从最接近Tier Zero资产的用户开始)。有两种方法可以做到这一点:

  1. 确保用户具有非常复杂的密码(64个随机字符)。
  2. 从用户中删除 SPN,采用配置关联服务为计算机帐户进行授权。

域控制器对象所有权

域控制器对象权限应仅由域管理员拥有。但在大多数现实的 AD 环境中,它们并非如此。这个问题非常普遍(我所审核的大约 75% 的环境中都发现到它),因为它导致在AD 中创建对象的用户拥有域控制器对象的所有权。这是一个高风险性的配置,因为拥有域控制器对象的用户可以对这些对象创建新的攻击路径,而传统上的非域管理员帐户并没有得到很好的保护。

要确定这是否发生在网络上,请使用FOSS BloodHound 底部的“原始查询”栏查询:

MATCH (g:Group)
WHEREg.objectidENDSWITH'-516'
MATCHp= (n:Base)-[:Owns]->(c:Computer)-[:MemberOf*1..]->(g)
RETURNp

结果将是一个图形,显示在此 AD 环境中拥有域控制器计算机对象的各种主体。所有这些随机主体都有通向它们的攻击路径,这意味着它们在域控制器处结束。

要解决此问题,请执行以下步骤:

1.打开 Active Directory 用户和计算机。

2.启用高级功能。

3.找到每个域控制器对象。

4.右键单击属性-安全-高级,然后更改。

5.将每个 DC 的所有者更改为 Domain Admins 组。

整个过程不超过一个小时,并且不太可能影响AD中的任何其他关系或权限。

域用户、普通用户和已授权的可控其他对象的用户组

拥有任意权限的域用户、普通用户和授权用户主体可作为攻击路径的入口。这些组其实并不需要权限 – 它更容易为黑客所利用。通常,管理员试图通过授予一揽子特权来解决特定问题,这是另一种危险配置,但也易于补救。

首先,找到控制另一个主体的域用户组的所有情况。FOSS BloodHound 可以通过两种方式显示这一点。

选项一:在 GUI 中查找组并单击“Outbound Object Control”。

选项二:如果您正在运行多个 AD 域,则可以使用此命令启动所有实例:

MATCHp= (g:Group)-[{isacl:true}]->(m)
WHEREg.objectidENDSWITH'-513'
RETURNp

解决此问题与上一个问题类似。在 Active Directory 用户和计算机中找到受影响的对象,调出其安全描述符,并删除“域用户”组是身份引用的违规 ACE。

识别和修复这三个问题完全在大多数 AD 或安全团队的能力范围内,即使没有后续工作,它们也会使 AD 环境更加安全。如果组织决定不关注 AD 安全,管理员可以(并且应该)通过解决这三个问题来发挥作用。

译者介绍

刘涛,IDC.NET社区编辑,某大型央企系统上线检测管控负责人,主要职责为严格审核系统上线验收所做的漏扫、渗透测试以及基线检查等多项检测工作,拥有多年网络安全管理经验,多年PHP及Web开发和防御经验,Linux使用及管理经验,拥有丰富的代码审计、网络安全测试和威胁挖掘经验。精通Kali下SQL审计、SQLMAP自动化探测、XSS审计、Metasploit审计、CSRF审计、webshell审计、maltego审计等技术。

原文标题:Fixing Common AD Security Issues With BloodHound FOSS,作者:Andy Robbins

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/137847.html<

(0)
管理的头像管理
上一篇2025-03-02 18:05
下一篇 2025-03-02 18:06

相关推荐

  • 高防服务器的防御原理是什么,如何选择高防服务器?

    高防服务器的防御原理,简单说就是通过流量清洗、防火墙规则和黑洞路由等机制,在攻击流量到达业务服务器之前将其过滤或阻断,从而保障正常访问,流量清洗机制是核心防线高防服务器对抗DDoS攻击,靠的不是单一技术,而是一套组合动作,最常见的攻击类型是流量型攻击,比如UDP洪水、SYN洪水、ICMP放大等,核心思路是耗尽带……

    2026-07-26
    0
  • BGP线路到底是什么意思呢,有什么优势?

    BGP线路是一种通过边界网关协议实现多运营商网络互联的接入方式,能自动选择最优路径,极大提升跨网访问速度和稳定性,是解决国内南北网络瓶颈的核心方案,什么是BGP线路BGP,全称Border Gateway Protocol,边界网关协议,是互联网核心路由协议之一,它负责在自治系统之间交换网络可达性信息,BGP线……

    2026-07-26
    0
  • 增值电信业务经营许可证对IDC有多重要,如何办理?

    增值电信业务经营许可证是IDC服务商合法运营的核心凭证,它直接决定了机房能否接入骨干网、客户能否放心托管业务,以及服务商自身能否长期稳定发展,许可证是IDC进入市场的硬门槛互联网数据中心业务属于增值电信业务中的B1类,依据工信部《电信业务经营许可管理办法》,任何从事服务器托管、虚拟主机、云服务等业务的企业,必须……

    2026-07-26
    0
  • 站群服务器一个IP放几个网站合适?,怎么选

    站群服务器一个IP放3-5个网站是大多数情况下的最佳平衡点,但具体数量需根据网站权重、内容质量及IP资源成本灵活调整,这个结论基于搜索引擎对同IP站点的关联判定逻辑,以及站群运营的长期实践,如果你刚接触站群,可能会纠结于IP分配,但核心原则是:不要让搜索引擎轻易识别出这些网站属于同一实体,站群IP分配的底层逻辑……

    2026-07-26
    0
  • DDoS攻击和CC攻击有什么区别,怎么防御?

    DDoS攻击和CC攻击最核心的区别在于攻击目标不同:DDoS攻击主要消耗网络带宽和基础设施资源,而CC攻击专门针对应用层逻辑,耗尽服务器CPU和数据库连接数,两者从原理到防御手段完全不同,攻防视角下的本质差异攻击目标:一个砸门,一个撬锁DDoS攻击(分布式拒绝服务)瞄准的是网络层和传输层,通过大量伪造数据包或畸……

    2026-07-26
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注