凌晨两点,你在三台显示器之间切来切去:左边是Sigma规则仓库,中间是刚改的Sysmon配置,右边Excel里MITRE ATT&CK的映射表已经三天没同步。这不是某个SOC分析师的噩梦,而是每个跨平台做威胁检测的人日常。

一位网安专业学生TiltedLunar123在GitHub扔了个叫SIEMForge的工具,把Sigma规则、Sysmon配置、Wazuh自定义规则全塞进一个Python包,还能离线扫日志、跨平台转语法。没有商业授权,没有Elastic集群,单机就能跑。

打开网易新闻 查看精彩图片

为什么"检测规则碎片化"是个真问题

SIEM(安全信息与事件管理)市场 Splunk、Elastic、QRadar、Sentinel各据一方,但检测逻辑本身应该是通用的。PowerShell下载执行就是PowerShell下载执行,不管你用哪家产品。

现实是碎片化的:

• Sigma规则存一个仓库,格式标准但无法直接运行

• Sysmon配置在另一个仓库,MITRE映射靠手工维护

• Wazuh的local_rules.xml散落在三台服务器,版本各不同

• ATT&CK覆盖度最后变成一张没人更新的 spreadsheet

TiltedLunar123的原话:「Every tutorial assumed you had a Splunk license or a full Elastic stack.」教程默认你有商业授权,但学生、小团队、家庭实验室根本没有。

更隐蔽的摩擦是验证周期。想测试一条Sigma规则对真实日志的效果,传统路径是:部署SIEM→配置数据接入→等待索引→跑查询。这个循环能把学习 momentum 直接杀死。

SIEMForge的解法:把"离线验证"做成核心功能

工具箱六个模块,最不一样的是Log Scanner Engine。

命令行指向一个JSON/JSONL/syslog/CSV文件,直接跑Sigma规则,输出人类可读的告警。不需要SIEM在线,不需要等数据索引。

技术实现上,扫描器做了三件事:

• 解析日志格式,统一成内部事件结构

• 加载Sigma规则的YAML,编译检测逻辑

• 逐条匹配,输出命中结果

难点在Sigma的检测语法本身。规则支持通配符、正则、contains-all/contains-any、选择组之间的逻辑与或非,还有取反。TiltedLunar123写了个138条测试的套件专门验证求值器,覆盖空值、大小写敏感、列表与标量匹配等边缘情况。

他的建议很实在:「Edge cases around null, case sensitivity, and list vs scalar matching will eat you alive otherwise.」

多后端转换是另一个刚需。同一条Sigma规则,可以转成Splunk SPL、Elasticsearch Lucene、Kibana KQL。换平台不用重写检测逻辑,这对担心厂商锁定的团队是硬需求。

MITRE映射:从"事后贴标签"到"设计时嵌入"

SIEMForge的每条捆绑规则都打了ATT&CK技术标签。跑一条命令就能看到当前覆盖矩阵,缺口在哪一目了然。

这改变了工作流。传统做法是检测写完后,再翻MITRE框架找对应技术编号,经常对不上或者漏标。SIEMForge把映射前置到规则设计阶段,和Sigma的tags字段原生集成。

捆绑的Sysmon配置和Wazuh自定义规则也做了同样映射。三套规则库指向同一套技术框架,终于能对齐。

验证模块则解决部署前的质量问题。坏YAML、字段条件映射错误、畸形Sigma语法,在推生产前拦截。

正方:这工具填补了明确的生态空白

支持观点集中在三个场景:

• 家庭实验室/学生环境:零成本验证检测逻辑,降低入门门槛

• 多SIEM企业:规则一次编写,多平台分发,减少重复劳动

• 红队/检测工程师协作:离线日志扫描让"攻击-检测"闭环更快,不用等生产环境数据

技术实现上,138条测试套件显示出对边缘 cases 的认真态度。Sigma求值器不是简单字符串匹配,而是完整实现了规范中的逻辑运算体系。

开源形态(GitHub仓库,Python单包安装)符合安全社区的工具分发习惯,没有商业授权壁垒。

反方:生产环境的信任门槛还没过

质疑声音同样具体:

• 规则库深度:捆绑的Sigma规则数量和质量能否比肩官方仓库或商业威胁情报源?项目刚起步,覆盖度有限

• 性能基准:离线扫描器在大体量日志(GB级)上的表现未披露,138条测试验证的是正确性,不是吞吐量

• 维护可持续性:学生项目,长期更新承诺存疑。安全规则需要持续跟进新攻击技术

• 企业采纳阻力:SOC团队已有成熟工作流,切换工具链需要迁移成本。SIEMForge的定位是"补充"还是"替代",边界模糊

一个关键细节:TiltedLunar123自述构建动机是「the tooling gap became obvious fast」,工具缺口明显。但缺口存在不等于市场愿意买单,尤其是免费工具向企业级产品跃迁的鸿沟。

我的判断:SIEMForge的价值在"验证环节",而非"替代SIEM"

这件事的重要性,在于它把威胁检测的开发流程拆成了两个阶段:逻辑验证阶段,和平台部署阶段。

传统工作流把两个阶段混在一起,导致验证成本极高。SIEMForge的离线扫描器让第一阶段可以独立运行,这对以下人群是实质性改变:

• 学习阶段的安全从业者:快速建立"规则-日志-告警"的直觉

• 检测工程师:在推生产前,用历史日志批量验证规则召回率

• 多SIEM环境:规则语法转换减少重复编码

但它不会取代商业SIEM。性能、规则库维护、与企业工作流的深度集成,这些门槛需要时间和资源堆出来。

更值得观察的是项目背后的模式:一个学生从自己的摩擦点出发,用开源工具封装社区标准(Sigma、ATT&CK),降低他人进入门槛。这种"自下而上"的工具演化,在安全社区反复出现——Suricata、Velociraptor、Sigma本身都是类似路径。

如果你正在维护检测规则,或者规划家庭实验室,SIEMForge值得放进工具箱。它的离线扫描器和多后端转换,能解决具体的、当下的摩擦。至于长期是否成为基础设施,取决于社区贡献和规则库的演化速度。

GitHub仓库:github.com/TiltedLunar123/SIEMForge