首页
/ Azure Sentinel中KMS密钥策略宽松告警规则优化分析

Azure Sentinel中KMS密钥策略宽松告警规则优化分析

2025-06-09 16:20:29作者:蔡丛锟

问题背景

在Azure Sentinel的安全分析规则"Suspicious overly permissive KMS key policy created"中,发现该规则无法正确触发告警。经过分析,问题出在规则查询逻辑中对KMS操作权限的匹配方式上。

技术分析

原始查询逻辑中使用了严格相等(==)来匹配kms:Encrypt或kms:*操作权限,但实际日志中这些值是存储在数组中的。当查询条件使用"=="操作符时,无法正确匹配数组中的元素,导致规则失效。

解决方案

优化后的查询逻辑采用了更合适的has_any操作符来匹配数组中的权限值。具体改进包括:

  1. 定义动态变量包含需要监控的KMS操作:
let kmsActions = dynamic(["kms:Encrypt", "kms:*"]);
  1. 修改匹配条件:
and Action has_any (kmsActions)

这种改进确保了能够正确识别包含在数组中的权限值,使规则能够按预期触发告警。

实现细节

完整的优化后查询逻辑包含以下关键部分:

  • 筛选CreateKey和PutKeyPolicy事件
  • 解析JSON格式的策略声明
  • 展开声明数组进行逐条分析
  • 提取操作、效果和主体信息
  • 匹配允许(Allow)效果和特定权限
  • 处理用户认证信息

技术价值

这一优化不仅解决了规则失效的问题,还展示了在Azure Sentinel中处理JSON数组数据时的最佳实践。对于安全运维团队来说,确保KMS密钥策略变更的监控有效性至关重要,可以及时发现过度宽松的权限配置,防止潜在的数据安全问题。

总结

通过将严格相等匹配改为数组包含检查,修复了Azure Sentinel中KMS密钥策略监控规则的告警功能。这一改进体现了在安全监控场景中正确处理复杂数据结构的重要性,为类似规则的优化提供了参考范例。

登录后查看全文
热门项目推荐
相关项目推荐