moblank9/SOC-Analyst-Toolkit
GitHub: moblank9/SOC-Analyst-Toolkit
面向 SOC 分析师的专业日志分析工具包,支持多格式日志解析、IOC 提取、威胁情报查询、MITRE ATT&CK 检测映射与多格式报告生成。
Stars: 0 | Forks: 0
# SOC Analyst 工具包
一款面向 SOC 分析师的专业级网络安全分析工具包。支持解析日志、提取威胁指标(IOC)、通过威胁情报源检查 IP、结合 MITRE ATT&CK 映射检测可疑活动,并生成综合报告。
## 功能
- **日志解析** — Windows 事件日志、Apache 访问日志、Linux Syslog、防火墙日志、CSV
- **IOC 提取** — IPv4/IPv6、域名、URL、电子邮件、SHA256/SHA1/MD5 哈希
- **威胁情报** — 集成 AbuseIPDB、VirusTotal、AlienVault OTX API
- **检测引擎** — 暴力破解、编码 PowerShell、凭据转储、权限提升、不可能的旅行
- **MITRE ATT&CK 映射** — 将检测结果与 ATT&CK 框架对齐
- **专业报告** — HTML(暗色主题)、JSON、CSV、PDF
- **CLI 界面** — 文件、文件夹、格式选择以及报告生成
## 快速开始
```
pip install -r requirements.txt
# 分析单个 log file
python app.py --file sample_logs/windows.log
# 结合 threat intelligence lookup 进行分析
python app.py --file sample_logs/windows.log --intel
# 分析 folder 中的所有 logs 并生成所有 report formats
python app.py --folder sample_logs/ --report html json csv pdf
# 强制指定特定 format
python app.py --file sample_logs/apache.log --format apache
```
## 使用方法
```
python app.py --file [options]
python app.py --folder [options]
```
### 选项
| 参数 | 描述 |
|----------|-------------|
| `--file, -f` | 待分析的日志文件(以空格分隔) |
| `--folder` | 包含日志文件的目录 |
| `--format` | 强制指定日志格式:`windows`、`apache`、`syslog`、`firewall`、`auto` |
| `--report` | 报告格式:`html`、`json`、`csv`、`pdf`(默认:`html`) |
| `--intel` | 通过威胁情报源检查 IOC |
| `--output, -o` | 输出目录(默认:`output/`) |
| `--quiet, -q` | 抑制详细输出 |
### API 密钥(可选)
设置用于威胁情报查询的环境变量:
```
export ABUSEIPDB_API_KEY="your_key"
export VIRUSTOTAL_API_KEY="your_key"
export OTX_API_KEY="your_key"
```
## 项目结构
```
SOC-Analyst-Toolkit/
├── app.py # Main CLI entry point
├── config/settings.py # Configuration and MITRE mappings
├── parsers/
│ ├── windows_logs.py # Windows Event Log parser
│ ├── apache_logs.py # Apache access log parser
│ ├── syslog_parser.py # Syslog + Firewall parser
│ └── regex_patterns.py # Central regex definitions
├── ioc/
│ ├── extractor.py # IOC extraction engine
│ ├── ip_checker.py # IP validation/classification
│ ├── hash_checker.py # Hash identification
│ └── domain_checker.py # Domain validation
├── intel/
│ ├── abuseipdb.py # AbuseIPDB API client
│ ├── virustotal.py # VirusTotal API client
│ └── otx.py # AlienVault OTX API client
├── reports/
│ ├── detection_engine.py # Suspicious activity detection
│ ├── report_generator.py # Report generation (HTML/JSON/CSV/PDF)
│ └── templates/
│ └── report_template.html
├── sample_logs/ # Test log files
├── output/ # Generated reports
└── utils/
├── logger.py # Logging setup
└── helpers.py # Utility functions
```
## 检测规则
| 检测项 | MITRE ATT&CK | 严重程度 |
|-----------|-------------|----------|
| 多次登录失败 | T1110 — 暴力破解 | 高危 |
| PowerShell 执行 | T1059.001 — PowerShell | 中危 |
| 编码 PowerShell | T1059.001 — PowerShell | 严重 |
| 凭据转储 | T1003 — 凭据转储 | 严重 |
| 管理员账户创建 | T1098 — 账户操纵 | 高危 |
| 权限提升 | T1078 — 有效账户 | 严重 |
| 不可能的旅行 | T1078.004 — 云账户 | 高危 |
| Base64 混淆 | T1027 — 混淆文件 | 中危 |
## 展示的技能
- Python 开发(模块化设计、OOP、CLI)
- 正则表达式(模式匹配、日志解析)
- 威胁情报(API 集成)
- 网络安全分析(检测规则、ATT&CK)
- 报告生成(HTML 模板、数据导出)
- 自动化(文件处理、pipeline)
## 许可证
MIT
标签:Python, Web报告查看器, 威胁情报, 安全分析工具, 安全运营, 开发者工具, 扫描框架, 攻陷指标, 文档结构分析, 无后门, 红队行动, 逆向工具