Huzaifa-Amin/nyx-sentinel-ai

GitHub: Huzaifa-Amin/nyx-sentinel-ai

NYX SENTINEL AI 是一个 Python 编写的 AI 增强型 SOC 与数字取证事件响应平台,自动化完成从 Wazuh 告警解析到威胁情报富化、MITRE ATT&CK 分类和事件报告生成的完整安全运营工作流。

Stars: 1 | Forks: 0

NYX SENTINEL AI Pipeline # NYX SENTINEL AI **AI 增强的 SOC 与数字取证事件响应平台** [![Tests](https://img.shields.io/badge/tests-145%20passing-brightgreen?style=for-the-badge&logo=pytest)](tests/) [![Python](https://img.shields.io/badge/python-3.11%2B-blue?style=for-the-badge&logo=python)](https://python.org) [![License](https://img.shields.io/badge/license-MIT-yellow?style=for-the-badge)](LICENSE) [![MITRE](https://img.shields.io/badge/MITRE%20ATT%26CK-v14.1-red?style=for-the-badge)](https://attack.mitre.org) [![Wazuh](https://img.shields.io/badge/Wazuh-4.x-blue?style=for-the-badge)](https://wazuh.com) [![VirusTotal](https://img.shields.io/badge/VirusTotal-v3-blue?style=for-the-badge)](https://virustotal.com) *毕业季网络安全作品集项目 — 都柏林理工大学 (TU Dublin) 应用网络安全理学硕士*
## 功能介绍 NYX SENTINEL AI 模拟了安全运营中心 (SOC) 分析师的核心工作流 — 完全由 Python 自动化实现: ``` Wazuh Alert JSON → Parse → Extract IOCs → Enrich (VT + AbuseIPDB) → Classify (MITRE ATT&CK) → Collect Evidence → Report ``` ## 截图 145/145 Tests Passing IOC Extraction and Enrichment ## 项目结构 ``` nyx-sentinel-ai/ ├── src/nyx_sentinel/ │ ├── config/settings.py # Pydantic-settings — no secrets hardcoded │ ├── parsers/ │ │ ├── models.py # ParsedAlert, IOC, EvidenceManifest models │ │ └── alert_parser.py # Wazuh JSON ingestion + strict validation │ ├── extractors/ioc_extractor.py # ReDoS-safe regex — 10 IOC types │ ├── enrichment/threat_intel.py # Async VirusTotal v3 + AbuseIPDB v2 │ ├── forensics/collector.py # Evidence collection + SHA-256 hashing │ ├── analysis/incident_classifier.py # MITRE ATT&CK + weighted severity │ ├── reporting/ │ │ ├── report_generator.py # HTML + PDF generation │ │ └── templates/incident_report.html.j2 # Dark SOC theme │ └── rules/ # 5 Sigma detection rules │ ├── brute_force.yml │ ├── suspicious_powershell.yml │ ├── reconnaissance.yml │ ├── privilege_escalation.yml │ └── persistence.yml ├── tests/ # 145 tests — 6 modules ├── data/sample_alerts/ # Realistic Wazuh JSON samples ├── data/mitre_attack/ # ATT&CK technique database (28 techniques) ├── scripts/run_pipeline.py # Full CLI pipeline runner └── docs/ # Architecture, install guide, demo steps ``` ## 快速开始 ``` # 1. Clone git clone https://github.com/Huzaifa-Amin/nyx-sentinel-ai.git cd nyx-sentinel-ai # 2. 虚拟环境 python3 -m venv venv && source venv/bin/activate # 3. Install pip install -r requirements-dev.txt && pip install -e . # 4. Configure (可选 — 演示无需 API keys 即可运行) cp .env.example .env # 5. 运行 demo pipeline python scripts/run_pipeline.py data/sample_alerts/ --stub # 6. 运行 tests pytest tests/ -v ``` ## 包含的示例告警类型 | 文件 | 技术 | Wazuh 级别 | 严重程度 | |------|-----------|-------------|----------| | `brute_force_alert.json` | T1110 — 暴力破解 | 10 | 高 | | `powershell_alert.json` | T1059.001 — PowerShell | 12 | 高 | | `recon_alert.json` | T1046 — 网络发现 | 8 | 中 | ## 检测规则 (Sigma 格式) | 规则 | MITRE 技术 | 级别 | |------|-----------------|-------| | 暴力破解 | T1110, T1110.001, T1110.003 | 高 | | 可疑的 PowerShell | T1059.001, T1027 | 高 | | 网络侦察 | T1046, T1018, T1082 | 中 | | 权限提升 | T1068, T1055, T1134 | 严重 | | 持久化机制 | T1547.001, T1053.005, T1543.003 | 高 | ## 安全控制措施 | 控制措施 | 实现方式 | |---------|---------------| | 无硬编码密钥 | 所有 API 密钥均通过 `.env` / 环境变量传递 | | 输入验证 | 对所有不受信任的输入使用 Pydantic v2 严格 schema | | 防范路径遍历 | 在文件操作前使用白名单 + `Path.resolve()` | | 防范 ReDoS | 使用锚定且长度受限的正则表达式 | | 防范 XSS | 对所有值使用 Jinja2 自动转义 + `html.escape()` | | 超时安全 | 所有 HTTP 调用均设有明确的超时时间 (httpx) | | 重试安全 | 带有抖动的指数退避机制 (tenacity) | | 证据完整性 | 对每个收集的证据文件进行 SHA-256 哈希校验 | ## 技术栈 | 层级 | 技术 | |-------|-----------| | 语言 | Python 3.11+ | | 验证 | Pydantic v2, pydantic-settings | | HTTP | httpx (异步) + tenacity | | 模板 | Jinja2 | | PDF | fpdf2 | | 日志 | loguru | | CLI | typer + rich | | 测试 | pytest, pytest-asyncio, pytest-cov | | SIEM | Wazuh 4.x | | IDS | Suricata 7.x | | 检测 | Sigma rules | | ATT&CK | MITRE ATT&CK v14.1 | ## 免费 API 密钥 | 服务 | 免费额度 | 注册链接 | |---------|-----------|---------| | VirusTotal | 4 次请求/分钟 | [virustotal.com](https://www.virustotal.com) | | AbuseIPDB | 1,000 次检查/天 | [abuseipdb.com](https://www.abuseipdb.com) | ## 许可证 MIT © 2024 NYX SENTINEL AI
作为毕业季网络安全作品集项目构建 — 都柏林理工大学 (TU Dublin) 应用网络安全理学硕士
标签:Cloudflare, Metaprompt, MITRE ATT&CK, Python, Wazuh, 威胁情报, 安全规则引擎, 安全运营, 开发者工具, 开源情报, 扫描框架, 数字取证与应急响应, 无后门, 自动化安全分析, 运行时操纵