Aks2812/SecOps-HubV2

GitHub: Aks2812/SecOps-HubV2

一款零依赖的安全运营自动化工具包,将告警分诊、CVE 情报查询、Sigma 检测规则生成与端到端调查编排整合为一条命令完成的轻量级 SOAR 替代方案。

Stars: 0 | Forks: 0

# SecOps-HubV2 | TRAE SOLO HACKATHON 30/05/2026 一款一体化、零依赖的安全运营命令行工具包,能够完成大多数付费 SOAR 平台无法做到的事情:在一秒钟内完成分类、CVE 情报、检测规则编写以及全告警调查。 Screenshot 2026-05-30 162316 Screenshot 2026-05-30 162332 ## 为什么开发此工具 安全分析师每天都要花好几个小时重复做同样的三件事:从告警中提取 IOC、查询 CVE 严重程度以及编写检测规则。SecOps-HubV2 使用 Python 标准库脚本将这一切全部自动化,不仅永不崩溃,而且无需进行 pip install。 从底层网络连接到上层脚本构建——每个模块均完全从零开始构建,仅使用了 `os`、`json`、`re`、`subprocess` 和 `urllib`。没有框架,没有外部包,没有供应商锁定。 ## 核心功能 | 脚本 | 用途 | |---|---| | `triage.py` | 从原始告警文本中提取 IOC(IP、域名、URL、哈希值)——包括转义的 JSON 和结构化日志。可通过 VirusTotal 和 AbuseIPDB 进行可选的情报富化。 | | `cve_lookup.py` | 通过 NVD REST API 查询 CVE ID,并返回基于 CVSS 的严重程度以及 MITRE ATT&CK 映射。 | | `detection_rule.py` | 根据自然语言的攻击描述生成 Sigma 检测规则。具备内容感知能力的关键字过滤功能会剔除噪声(停用词、IP、URL、CVE ID),仅保留行为指标。 | | `investigate.py` | 端到端编排器:串联 分类 → CVE 查询 → 检测规则 → CISA KEV 检查 → 自动裁决(ESCALATE / MONITOR)。同时输出 Markdown 报告和带有节省时间投资回报率(ROI)页脚的美化 HTML 文件。 | | `batch.py` | 批量处理器:读取 `in/alerts/*.json`,对每个文件运行 `investigate.py`,根据裁决结果进行分类(escalated / review / suppressed),并将案例文件写入 `out/cases/`。 | ## 主要特性 - **零外部依赖** —— 仅使用 Python 3 标准库 - **Mock/离线模式** —— 每个脚本均支持 `--mock` 以进行完全离线操作 - **优雅降级** —— 如果无法连接 API,将自动启用 Mock 回退;绝不会发生崩溃 - **CISA KEV 集成** —— 实时查询已知被利用漏洞目录;当某个 CVE 处于被积极利用状态时,会自动提升优先级 - **环境变量检测支持** —— 从 `.env` 加载用于 API 密钥的环境变量(参见 `.env.example`) - **兼容结构化输入** —— triage 能够同样出色地处理原始 JSON 日志、转义的 Shell 字符串和纯文本 - 每份调查报告均包含 **ROI 页脚**,显示为分析师节省的分钟数 ## 快速开始 ``` # 单告警调查 (mock/offline) python scripts/investigate.py --mock "Beacon from 45.77.12.9 exploiting CVE-2024-3094 with PowerShell dropper" # IOC 分诊 python scripts/triage.py --mock "Suspicious connection to 185.220.101.47 and https://evil.example/path" # CVE 严重性查询 python scripts/cve_lookup.py "CVE-2024-3094" # 生成 Sigma 检测规则 python scripts/detection_rule.py "Detect PowerShell EncodedCommand downloading from Invoke-WebRequest" # 批处理 python scripts/batch.py --mock ``` ## 配置说明 将 `.env.example` 复制为 `.env` 并添加您的 API 密钥: ``` VIRUSTOTAL_API_KEY=your_vt_key ABUSEIPDB_API_KEY=your_abuse_key NVD_API_KEY= ``` NVD 密钥是可选的(免费层级不需要)。密钥将由 `investigate.py` 自动加载,并由子脚本继承。 ## 目录结构 ``` secops-hub/ ├── .env.example # API key template ├── .gitignore ├── README.md ├── SKILL.md # SOLO skill definition ├── report.html # Generated HTML report (overwritten each run) ├── in/alerts/ # Drop alert JSON files here for batch processing ├── out/cases/ # Batch investigation case files land here └── scripts/ ├── triage.py ├── cve_lookup.py ├── detection_rule.py ├── investigate.py └── batch.py ``` ## 契约约定 每个脚本都接受单个字符串参数,并向 stdout 精确打印一个 JSON 对象,该对象包含 `severity`、`summary`、`mitre` 和 `action` 键。此外,`investigate.py` 编排器还会在项目根目录下写入一份完整的 Markdown 报告和一份美化的 HTML 文件。
标签:Python标准库, SOAR, 威胁情报, 安全运营, 开发者工具, 扫描框架, 自动化响应