Coded-Alchemy/Detections_as_Code
GitHub: Coded-Alchemy/Detections_as_Code
一个将 Sigma 检测规则自动化验证、转换为 Splunk 格式并通过 Terraform 和 GitHub Actions 部署的检测工程化流水线项目。
Stars: 0 | Forks: 0
# Sigma-to-Splunk CI/CD 检测工程流水线
自动化流水线,通过 Terraform 和 GitHub Actions 验证、转换 Sigma 检测规则并将其部署到 Splunk。
本项目展示了生产级的检测工程实践,包括版本控制、规则验证、MITRE ATT&CK 映射、宏抽象以及基于 Terraform 的部署。
主要优势:
- 版本控制的检测规则
- 自动化测试与验证
- 跨环境的一致性部署
- 快速的检测部署
- 协作与同行评审
- 回滚能力
## 技术栈
| 组件 | 技术 | 用途 |
| ---------------- | ----------------- | --------------------------------- |
| 检测格式 | Sigma | 通用检测规则格式 |
| IaC 工具 | Terraform | Splunk 的基础设施即代码 |
| CI/CD | GitHub Actions | 自动化与编排 |
| Runner | Self-Hosted | 在实验室环境中执行任务 |
| SIEM | Splunk Enterprise | 检测部署目标 |
| 版本控制 | Git/GitHub | 源代码控制与协作 |
## 架构
## 文档
- [文档](./docs/DETECTION_PIPELINE.md)
## 工作流
- 将 Sigma 规则存储在 `rules/` 中
- 在 CI 中将规则转换为 Splunk SPL
- 根据生成的 SPL 生成 Terraform 资源 (splunk_saved_search)
- 应用 Terraform 部署保存的搜索以及其他 Splunk 基础设施
## 展示技能
- DevOps/SecOps 实践
- 基础设施即代码 (Terraform)
- CI/CD 流水线设计
- 自动化测试
- 检测工程
- Sigma 规则开发
- 查询优化
- 误报调优
- 版本控制
- Git 工作流
- Pull request 审查
- 分支保护
- 自动化
- GitHub Actions
- Python 脚本编写
- SIEM 管理
- Splunk API 集成
- 程序化部署
- 告警配置
- 质量保证
- 自动化测试
- 验证检查
- 回滚能力
- 可扩展性
- 可重复的流程
- 环境一致性
## 未来增强
- 多 SIEM 支持
- 添加 Elastic 后端
- 添加 Sentinel 后端
- 高级测试
- 规则的单元测试
- 集成测试
- 性能基准测试
- 合规性映射
- 映射到合规框架
- 生成合规报告
此检测即代码 (Detection-as-Code) 流水线展示了在 SOC 环境中备受重视的现代安全工程实践与 DevSecOps 原则。
标签:CI/CD, DevSecOps, ECS, GitHub Actions, Sigma规则, Splunk, Terraform, 上游代理, 检测工程, 目标导入, 自动笔记