ClockworkZMP/sigma-detection-rule-library

GitHub: ClockworkZMP/sigma-detection-rule-library

一个映射 MITRE ATT&CK 的 Sigma 安全检测规则库,附带将规则转换为 Splunk SPL 和 Elasticsearch KQL 的 Python 转换工具。

Stars: 0 | Forks: 0

# Sigma 检测规则库 ![Sigma](https://img.shields.io/badge/format-Sigma-blue) ![规则](https://img.shields.io/badge/rules-8-green) ![MITRE](https://img.shields.io/badge/MITRE%20ATT%26CK-mapped-red) ![许可证](https://img.shields.io/badge/license-MIT-green) 一个生产级 [Sigma](https://github.com/SigmaHQ/sigma) 检测规则库,涵盖常见的攻击者技术,并映射到 MITRE ATT&CK。包含一个 Python 转换器,可将规则转换为 **Splunk SPL** 和 **Elasticsearch/OpenSearch KQL**。 基于跨企业 SIEM 环境(Panther、Splunk、ELK Stack)的实际检测工程经验构建。 ## 规则 | 文件 | 技术 | MITRE | 级别 | |------|-----------|-------|-------| | `credential-access/T1003_lsass_memory_dump.yml` | 通过 ProcDump、Mimikatz、comsvcs 进行 LSASS 内存转储 | T1003.001 | 高 | | `credential-access/T1110_brute_force_okta.yml` | Okta 暴力破解 / 凭据填充 | T1110 | 中 | | `defense-evasion/T1562_cloudtrail_stopped.yml` | CloudTrail 日志记录被禁用或删除 | T1562.008 | 高 | | `defense-evasion/T1055_process_injection_common.yml` | 通过 CreateRemoteThread / LSASS 访问进行进程注入 | T1055 | 高 | | `execution/T1059_powershell_encoded.yml` | PowerShell `-EncodedCommand` 混淆 | T1059.001 | 中 | | `lateral-movement/T1021_rdp_from_unexpected_host.yml` | 来自非管理员/非堡垒主机的 RDP 登录 | T1021.001 | 中 | | `persistence/T1098_aws_iam_key_created_root.yml` | 为 root 账户创建 IAM 访问密钥 | T1098 | 严重 | | `persistence/T1547_registry_run_key.yml` | 通过 Windows 注册表 Run 键实现持久化 | T1547.001 | 中 | ## 快速开始 ### 将规则转换为 Splunk SPL ``` pip install -r requirements.txt python converter/sigma_converter.py rules/execution/T1059_powershell_encoded.yml --target splunk ``` 输出: ``` // PowerShell Encoded Command Execution | Level: medium | MITRE: attack.t1059.001, attack.t1027 index=* (process_path="*\powershell.exe" OR process_path="*\pwsh.exe") AND (process_command_line="* -EncodedCommand *" OR process_command_line="* -enc *" OR ...) NOT (parent_process_path="*\VeeamBackup.exe" OR ...) ``` ### 转换为 Elasticsearch KQL ``` python converter/sigma_converter.py rules/persistence/T1098_aws_iam_key_created_root.yml --target elastic ``` ### 一次性转换所有规则 ``` # 打印到 stdout python converter/sigma_converter.py rules/ --target splunk # 写入文件 python converter/sigma_converter.py rules/ --target elastic --output converted/ # 验证所有 rules python converter/sigma_converter.py rules/ --validate ``` ## 规则格式 规则遵循 [Sigma 规范](https://github.com/SigmaHQ/sigma/wiki/Specification): ``` title: Short, descriptive rule name id: unique-uuid status: stable | test | experimental description: What this detects and why it matters author: ClockworkZMP tags: - attack.tactic - attack.tNNNN logsource: category: process_creation product: windows detection: selection: Image|endswith: '\evil.exe' CommandLine|contains: 'bad' filter_legit: ParentImage|endswith: '\legit.exe' condition: selection and not filter_legit falsepositives: - List known false positive scenarios level: critical | high | medium | low | informational ``` ## 支持的修饰符 | 修饰符 | 行为 | 示例 | |----------|----------|---------| | `endswith` | 字段以指定值结尾 | `Image\|endswith: '\cmd.exe'` | | `startswith` | 字段以指定值开头 | `CommandLine\|startswith: 'powershell'` | | `contains` | 字段包含子字符串 | `CommandLine\|contains: '-enc'` | | `contains\|all` | 字段必须包含所有值 | `CommandLine\|contains\|all: ['sekurlsa', 'logon']` | | `re` | 正则表达式匹配 | `CommandLine\|re: '(?i)mimikatz'` | ## 添加规则 1. 从 `rules/` 复制一条规则作为模板 2. 为 `id` 字段生成 UUID:`python -c "import uuid; print(uuid.uuid4())"` 3. 在您的环境中验证通过之前,设置 `status: experimental` 4. 验证:`python converter/sigma_converter.py your_rule.yml --validate` ## 许可证 MIT — 规则可自由使用、修改,并整合到商业 SIEM 部署中。
标签:AMSI绕过, Elasticsearch, OpenCanary, Python, Sigma规则, 威胁检测, 安全, 无后门, 目标导入, 超时处理, 逆向工具