添加 AdminSDHolder SDProp 排除项编辑

识别对 dsHeuristics 属性的修改,该属性位于保存从 SDProp 进程中排除的组的配置的位上。SDProp 将受保护对象上的权限与 AdminSDHolder 对象上定义的权限进行比较。如果任何受保护帐户和组的权限不匹配,则会将受保护帐户和组的权限重置为与域的 AdminSDHolder 对象的权限相匹配,这意味着排除的组将保持不变。攻击者可以滥用此错误配置来维持对这些组中特权帐户的长期访问。

规则类型: eql

规则索引:

  • winlogbeat-*
  • logs-system.*
  • logs-windows.*

严重程度: 高

风险评分: 73

运行频率: 5 分钟

搜索索引的时间范围: now-9m (日期数学格式,另请参阅 额外的回溯时间)

每次执行的最大警报数: 100

参考:

标签:

  • 域: 端点
  • 操作系统: Windows
  • 用例: 威胁检测
  • 战术: 持久化
  • 数据源: Active Directory
  • 资源: 调查指南
  • 用例: Active Directory 监控

版本: 110

规则作者:

  • Elastic

规则许可证: Elastic 许可证 v2

调查指南编辑

分类和分析

调查添加的 AdminSDHolder SDProp 排除项

SDProp 进程将受保护对象上的权限与 AdminSDHolder 对象上定义的权限进行比较。如果任何受保护帐户和组的权限不匹配,它会将受保护帐户和组的权限重置为与域 AdminSDHolder 对象中定义的权限相匹配。

dSHeuristics 是一个 Unicode 字符串属性,其中字符串中的每个字符都代表一个用于确定 Active Directory 行为的启发式方法。

管理员可以通过将字符串的第 16 位 (dwAdminSDExMask) 设置为某个值(代表组)来使用 dSHeuristics 属性从 SDProp 进程中排除特权组。

  • 例如,要排除“帐户操作员”组,管理员可以修改字符串,以便将第 16 个字符设置为 1(即 0000000001000001)。

使用此排除项可能会使帐户不受保护,并导致排除的组的权限配置错误,从而使攻击者能够将帐户添加到这些组中,以维持具有高权限的长期持久性。

此规则匹配 dsHeuristics 对象的更改,其中第 16 位设置为非零值。

可能的调查步骤

  • 确定执行操作的用户帐户,以及该帐户是否应该执行此类操作。
  • 联系帐户和系统所有者,确认他们是否知晓此活动。
  • 调查过去 48 小时内与用户/主机关联的其他警报。
  • 检查分配给 winlog.event_data.AttributeValue 字段上字符串的第 16 位的值
  • 帐户操作员 等于 1
  • 服务器操作员 等于 2
  • 打印操作员 等于 4
  • 备份操作员 等于 8 字段值范围从 0 到 f (15)。如果指定了多个组,则这些值将加在一起;例如,“备份操作员”和“打印操作员”将在该位上设置 c 值。

误报分析

  • 虽然这种修改可以合法进行,但这并不是最佳做法。任何潜在的良性真阳性 (B-TP) 都应由安全团队映射和审查,以寻求替代方案,因为这会削弱特权组的安全性。

响应和修复

  • 可以通过在 dSHeuristics 中将 dwAdminSDExMask(第 16 位)设置为 0 来还原更改。
  • 使用事件响应数据,更新日志记录和审计策略,以缩短平均检测时间 (MTTD) 和平均响应时间 (MTTR)。

设置编辑

设置

必须为(成功)配置“审核目录服务更改”日志记录策略。使用高级审核配置实施日志记录策略的步骤

Computer Configuration >
Policies >
Windows Settings >
Security Settings >
Advanced Audit Policies Configuration >
Audit Policies >
DS Access >
Audit Directory Service Changes (Success)

如果在非 elastic-agent 索引(如 beats)上为 <8.2 版本启用 EQL 规则,则事件不会定义 event.ingested,并且在 8.2 版本之前不会添加 EQL 规则的默认回退。因此,为了使此规则有效工作,用户需要添加自定义摄取管道以将 event.ingested 填充到 @timestamp。有关添加自定义摄取管道的更多详细信息,请参阅 - https://elastic.ac.cn/guide/en/fleet/current/data-streams-pipeline-tutorial.html

规则查询编辑

any where event.action == "Directory Service Changes" and
  event.code == "5136" and
  winlog.event_data.AttributeLDAPDisplayName : "dSHeuristics" and
  length(winlog.event_data.AttributeValue) > 15 and
  winlog.event_data.AttributeValue regex~ "[0-9]{15}([1-9a-f]).*"

框架: MITRE ATT&CKTM