Nicholas-Arcari/soc-toolkit

GitHub: Nicholas-Arcari/soc-toolkit

模块化 SOC 分析工具包,整合邮件、日志与 IOC 能力,辅助安全团队高效完成检测与调查。

Stars: 1 | Forks: 0

# SOC Toolkit ![Python](https://img.shields.io/badge/Python-3.12-3776AB?style=flat-square&logo=python&logoColor=white) ![FastAPI](https://img.shields.io/badge/FastAPI-0.115-009688?style=flat-square&logo=fastapi&logoColor=white) ![React](https://img.shields.io/badge/React-18-61DAFB?style=flat-square&logo=react&logoColor=black) ![TypeScript](https://img.shields.io/badge/TypeScript-5-3178C6?style=flat-square&logo=typescript&logoColor=white) ![License](https://img.shields.io/badge/License-MIT-green?style=flat-square) 模块化 SOC 分析工具包,包含 REST API 后端和 React 前端。专为日常安全操作设计:邮件分类、日志调查和威胁情报 enrichment。 ## 模块 ### 钓鱼分析器 上传 `.eml` 文件进行自动化分析: - **头部分析** - SPF/DKIM/DMARC 验证、发送者异常检测、接收链追踪 - **URL 扫描** - 基于模式的检测(品牌伪造、可疑顶级域名、缩短器)+ VirusTotal/URLScan.io 查询 - **附件扫描** - 哈希计算、双扩展名检测、VirusTotal/MalwareBazaar 查询 - **判决引擎** - 自动风险评分(0-100),带置信度和可操作建议 ### 日志分析器 上传日志文件进行威胁检测: - **SSH 日志** - 暴力破解检测、失败/成功登录关联、攻击者 IP 地理位置 - **Web 日志** - SQL 注入、路径穿越、命令注入、扫描/枚举检测 - **Windows 安全日志** - 事件 ID 关联(4625、4697、7045...)、横向移动检测、持久化机制告警 - **告警引擎** - 基于严重性的告警,附带 AbuseIPDB enrichment 和 MITRE ATT&CK 映射 ### IOC 提取器 从威胁报告、邮件和原始文本中提取指标: - **支持的 IOC 类型** - IPv4、域名、URL、电子邮件地址、MD5/SHA1/SHA256 哈希、CVE 标识符 - **输入格式** - PDF(威胁报告)、.eml(邮件)、纯文本、HTML、CSV - **Enrichment** - 通过 VirusTotal、AbuseIPDB、AlienVault OTV 自动验证 - **上下文保留** - 为每个 IOC 捕获周围文本 ## 架构 ``` ┌──────────────────────────────────────────────┐ │ Frontend │ │ React + TypeScript + Vite │ │ Tailwind CSS + shadcn/ui │ └──────────────────┬───────────────────────────┘ │ REST API ┌──────────────────▼───────────────────────────┐ │ Backend │ │ FastAPI (Python) │ │ │ │ ┌────────────┐ ┌──────────┐ ┌────────────┐ │ │ │ Phishing │ │ Logs │ │ IOC │ │ │ │ Analyzer │ │ Analyzer │ │ Extractor │ │ │ └─────┬──────┘ └────┬─────┘ └─────┬──────┘ │ │ └──────────────┼─────────────┘ │ │ │ │ │ ┌────────────────────▼──────────────────┐ │ │ │ Integrations │ │ │ │ VirusTotal │ AbuseIPDB │ Shodan │ │ │ │ URLScan.io │ MalwareBazaar │ OTX │ │ │ └───────────────────────────────────────┘ │ │ │ │ │ ┌────────────────────▼──────────────────┐ │ │ │ SQLite Cache + Rate Limiter │ │ │ └───────────────────────────────────────┘ │ └──────────────────────────────────────────────┘ ``` ## 快速开始 ### Docker(推荐) ``` cp .env.example .env # 使用您的 API 密钥编辑 .env docker compose up --build ``` - 前端: http://localhost:3000 - 后端 API: http://localhost:8000/api/docs ### 本地开发 **后端:** ``` cd backend poetry install cp ../.env.example ../.env poetry run uvicorn api.app:app --reload ``` **前端:** ``` cd frontend npm install npm run dev ``` ### CLI ``` cd backend poetry run python cli.py phishing suspicious_email.eml poetry run python cli.py logs /var/log/auth.log --log-type ssh poetry run python cli.py ioc threat_report.pdf ``` ## API 端点 | 方法 | 端点 | 描述 | |--------|----------|-------------| | `POST` | `/api/phishing/analyze` | 分析邮件文件(.eml) | | `POST` | `/api/phishing/check-url` | 检查单个 URL | | `POST` | `/api/logs/analyze` | 分析日志文件 | | `POST` | `/api/ioc/extract` | 从文件中提取 IOC | | `POST` | `/api/ioc/extract-text` | 从原始文本中提取 IOC | | `POST` | `/api/reports/export` | 导出结果(JSON/CSV/PDF) | | `GET` | `/api/health` | 健康检查 + 已配置 API | 完整的交互式文档位于 `/api/docs`(Swagger UI)。 ## 集成 | 服务 | API 层级 | 速率限制 | 用途 | |---------|----------|------------|----------| | [VirusTotal](https://www.virustotal.com/) | 免费 | 4 请求/分钟 | URL、哈希、IP、域名查询 | | [AbuseIPDB](https://www.abuseipdb.com/) | 免费 | 1000/天 | IP 信誉和滥用报告 | | [Shodan](https://www.shodan.io/) | 免费 | 有限 | IP 侦察、开放端口 | | [URLScan.io](https://urlscan.io/) | 免费 | 50 次/天 | URL 扫描和截图 | | [MalwareBazaar](https://bazaar.abuse.ch/) | 免费 | 无需密钥 | 恶意软件样本查询 | | [AlienVault OTX](https://otx.alienvault.com/) | 免费 | 无限制 | 威胁情报脉冲 | ## 导出格式 - **JSON** - 机器可读格式,用于 SIEM 导入或进一步处理 - **CSV** - 兼容电子表格,用于 IOC 列表和告警表 - **PDF** - 带严重性徽章的专业报告,适合管理层 ## 技术栈 - **后端:** Python 3.12、FastAPI、SQLAlchemy、Pydantic、WeasyPrint - **前端:** React 18、TypeScript、Vite、Tailwind CSS、shadcn/ui - **数据库:** SQLite(API 响应缓存) - **部署:** Docker Compose - **CI/CD:** GitHub Actions(Ruff linting、MyPy 类型检查、pytest) ## 许可证 MIT 许可证 - 详情见 [LICENSE](LICENSE)。
标签:AbuseIPDB, AMSI绕过, Ask搜索, AV绕过, Cloudflare, CVE查找, DKIM, DMARC, FastAPI, IOC提取, IP信誉, MITRE ATT&CK, PDF解析, Python, React, REST API, SPF, SSH暴力破解, Syscalls, TypeScript, URL扫描, VirusTotal, 勒索软件, 双扩展名检测, 可疑TLD, 告警引擎, 命令注入, 品牌冒充检测, 哈希计算, 地理定位, 头部分析, 威胁情报, 威胁报告解析, 威胁检测, 安全插件, 安全运营中心, 开发者工具, 持久化检测, 无后门, 日志取证, 日志解析, 模块化工具集, 横向移动, 短链接检测, 编程规范, 网络映射, 自动化风险评分, 证书伪造, 请求拦截, 路径遍历, 逆向工具, 邮件分析, 邮件取证, 钓鱼分析, 附件扫描