首页
/ Sigma规则中IntegrityLevel字段匹配问题的技术解析

Sigma规则中IntegrityLevel字段匹配问题的技术解析

2025-05-25 01:18:01作者:裴麒琰

背景

在安全检测领域,Sigma作为一种通用的日志检测规则格式,被广泛应用于各类SIEM系统和日志分析工具中。近期在Neo23x0/sigma项目中发现了一个关于Windows进程完整性级别(IntegrityLevel)匹配的问题,这直接影响到某些UAC绕过攻击检测规则的有效性。

问题本质

Windows系统中的进程完整性级别在日志中可能以两种形式存在:

  1. 字符串形式:如"High"、"System"等可读性描述
  2. SID形式:如"S-1-16-12288"等安全标识符

当前Sigma规则库中的多数规则仅包含字符串形式的匹配条件,而实际日志中可能出现SID形式的记录,导致规则匹配失败。这种情况在检测UAC绕过等需要特定权限级别的攻击行为时尤为关键。

技术细节

Windows完整性级别的SID表示遵循特定格式:

  • S-1-16-4096 (低完整性)
  • S-1-16-8192 (中完整性)
  • S-1-16-12288 (高完整性)
  • S-1-16-16384 (系统完整性)

以UAC绕过工具ComputerDefaults.exe的检测为例,规则期望匹配高完整性级别("High"),但实际日志中记录的是"S-1-16-12288",造成匹配失败。

解决方案

  1. 规则优化方案

    • 在Sigma规则中同时包含字符串和SID两种形式的匹配条件
    • 示例修改:
      IntegrityLevel|re: "(?i)^(High|S\-1\-16\-12288)$"
      
  2. 日志预处理方案

    • 在日志收集阶段将SID转换为对应的字符串描述
    • 在SIEM系统中建立SID到完整性级别的映射表
  3. 检测策略改进

    • 对于关键的安全检测规则,建议同时考虑父进程和子进程的完整性级别变化
    • 结合进程树分析,识别异常权限提升模式

最佳实践建议

  1. 在编写涉及Windows安全属性的Sigma规则时,应当考虑所有可能的日志表示形式
  2. 对于企业安全团队,建议在日志收集管道中增加字段标准化处理
  3. 定期验证关键检测规则的有效性,特别是涉及权限和完整性级别的规则

总结

这个案例揭示了安全检测中一个常见但容易被忽视的问题——日志字段的多种表示形式。通过理解Windows完整性级别的技术实现和日志记录特点,我们可以构建更健壮的安全检测机制。未来在Sigma规则开发中,应当更加注重字段值的多形式兼容性,以提升检测覆盖率。

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

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
470
3.48 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
718
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
209
84
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
695
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1