AshwinNHacker/rulesentry
GitHub: AshwinNHacker/rulesentry
RuleSentry 是一款结合静态分析、机器学习评分和真实样本验证的 Sigma/YARA 检测规则代码检查工具,用于在规则部署前拦截错误、性能问题和弱检测逻辑。
Stars: 1 | Forks: 0
# RuleSentry
RuleSentry 是一款生产级静态分析工具,可在有问题的检测规则进入您的 SIEM、EDR 或威胁狩猎平台之前将其拦截。它结合了传统的静态分析、机器学习以及真实样本验证,以确保您的 Sigma 和 YARA 规则具备高性能、高准确性以及完善的文档。
## 功能特性
- **广泛的 Regex 检测**:识别无限定通配符、灾难性回溯风险以及 ReDoS 模式
- **MITRE 映射验证**:确保 ATT&CK 技术 ID 存在、格式正确,并正确映射到战术
- **死规则检测**:查找具有矛盾条件或未定义字符串引用的规则
- **性能分析**:标记缺失的 filesize 约束、开销高昂的 `all of them` 条件以及未使用的导入
- **ML 质量评分**:使用微调过的 CodeBERT 来预测规则质量并标记有问题的模式
- **样本验证**:使用真实的恶意软件和良性样本库测试 YARA 规则,以验证其检测能力
- **SARIF 输出**:原生支持 GitHub Security 标签页 / CodeQL 集成
- **CI/CD 就绪**:内置 GitHub Actions 工作流
## 快速开始
```
# 安装
pip install rulesentry
# 基础 lint
rulesentry rules/
# 带样本验证的全面分析
rulesentry rules/ --validate-samples --fail-on high
# 用于 GitHub 的 SARIF 输出
rulesentry rules/ --format sarif --output results.sarif
```
## 环境要求
- Python 3.10+
- 可选:YARA-X(用于 YARA 解析)、Sigma CLI(用于 Sigma 转换)
- 可选:用于 ML 模型推理的 GPU(使用 CPU 也可以正常运行)
## 架构
```
Parser -> AST Builder -> Static Analysis Engine
-> ML Pipeline (CodeBERT) -> Sample Validator
-> Reporter (SARIF/JSON/Text)
```
## 配置
在您的仓库根目录下创建 `.rulesentry.yml`:
```
analyzers:
YARA-BROAD-REGEX:
enabled: true
max_wildcard_length: 10
SIGMA-MITRE-MAPPING:
enabled: true
require_tactic_tags: true
ML-RULE-QUALITY:
enabled: true
model_path: "microsoft/codebert-base"
quality_threshold: 0.3
sample_validation:
malware_path: "./samples/malware"
benign_path: "./samples/benign"
min_malware_hits: 1
max_benign_hits: 0
```
## 许可证
MIT 许可证 - 请参阅 LICENSE
标签:YARA, 云资产可视化, 逆向工具, 错误基检测, 静态代码分析