s4mm1t/mini-soc-log-analyzer
GitHub: s4mm1t/mini-soc-log-analyzer
一款防御性安全 CLI 工具,用于解析 Linux 身份验证日志和 Web 访问日志,检测暴力破解、可疑 UA 及 IOC 匹配,并生成 Markdown 与 HTML 格式的分析报告。
Stars: 1 | Forks: 0
# Mini SOC 日志分析器
防御性安全 CLI,用于解析 Linux 身份验证日志和 Web 访问日志,检测常见的蓝队信号,并生成可读的 Markdown 或 HTML 报告。
## 预览
```
$ python analyze.py --log samples/auth.log --type auth --output report.md
[+] Parsed 8 events
[!] MEDIUM Brute force: 203.0.113.10 - 5 failed attempts in 10 min
[+] Report saved -> report.md
$ python analyze.py --log samples/nginx_access.log --type nginx --output report.html --format html
[+] Parsed 25 events
[!] HIGH Suspicious UA: 198.51.100.23 - Nikto/2.5.0
[!] HIGH IOC match: 203.0.113.66 (known bad IP)
[!] MEDIUM Error flood: 198.51.100.50 - 20 HTTP 403/404 hits in 5 min
[+] Report saved -> report.html
```
## 功能
- SSH 身份验证解析器,用于解析密码失败、接受的登录和无效用户。
- Nginx 和 Apache combined 访问日志解析器,避免使用简单的 `split()` 进行解析。
- 具有滑动窗口阈值的暴力破解检测器。
- 可疑 user-agent 检测器,适用于 Nikto、sqlmap、masscan、zgrab、curl 和 python-requests 等工具。
- 403/404 泛洪检测器。
- IOC 匹配器,用于匹配来自 YAML 的恶意 IP、CIDR 范围和域名。
- 包含摘要、告警表和时间线的 Markdown 和 HTML 报告。
- 合成日志和单元测试。
## 快速开始
```
python analyze.py --log samples/auth.log --type auth --output report.md
python analyze.py --log samples/nginx_access.log --type nginx --output report.html --format html
```
安装依赖项后:
```
python -m pip install -r requirements.txt
pytest
```
对于包含的简单 YAML 文件,该工具在没有 PyYAML 的情况下也能工作。
## 配置
阈值和签名位于 `config.yaml` 中。
```
brute_force:
threshold: 5
window_minutes: 10
error_flood:
threshold: 20
window_minutes: 5
```
IOC 位于 `iocs.yaml` 中。
```
bad_ips:
- 203.0.113.66
- 198.51.100.23/32
bad_domains:
- evil.example.com
```
## 架构
解析器将原始日志行转换为 `LogEvent` 对象。检测器消费 `LogEvent` 对象并发出 `Alert` 对象。报告器渲染最终的 `AnalysisResult`。
```
raw logs -> parsers -> LogEvent[] -> detectors -> Alert[] -> reporters
```
这种分离使检测器逻辑独立于原始日志格式。
标签:AMSI绕过, IP 地址批量处理, Python, 威胁检测, 安全规则引擎, 安全运营, 恶意代码分类, 扫描框架, 无后门, 红队行动, 逆向工具