25-THEBEaST-25/threatlens-ai
GitHub: 25-THEBEaST-25/threatlens-ai
ThreatLens AI 是一款基于 Streamlit 的 AI 驱动网络安全日志分析助手,能够自动解析多种日志格式并检测暴力破解、撞库、端点探测等攻击行为,为 SOC 分析师提供风险评分、调查叙述和案例管理能力。
Stars: 0 | Forks: 1
# ThreatLens AI
ThreatLens AI 是一款基于 Streamlit 的网络安全调查助手。它能够解析 SSH/syslog、nginx/apache 风格的访问日志、ISO 时间戳文本日志以及换行分隔的 JSON 事件,随后将检测结果转化为攻击故事、分析师命令、报告以及轻量级的案例工作流。
## 特色功能
- **攻击故事模式:** 将零散的事件转化为可读的调查叙述。
- **SOC 命令助手:** 为可疑 IP 推荐 grep、journalctl 和登录历史记录命令。
- **案例工作流:** 跟踪所有者、状态、备注、最高风险以及可下载的案例文件。
- **威胁情报层:** 通过本地行为标签和可选的 AbuseIPDB 查询来丰富告警信息。
- **误报控制:** 支持将已知 IP、内部网络和受信任的 user agent 加入白名单。
## 检测范围
- 暴力破解身份验证尝试
- 针对大量用户名的撞库攻击
- 多次失败后的成功登录
- 针对 admin/config/路径遍历的可疑端点探测
- 类似扫描器的 user agent 和端点分布特征
## 本地运行
```
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
python -m streamlit run app.py
```
## 可选集成
### OpenAI 分析师报告
将您的 OpenAI 密钥添加到 Streamlit secrets 中:
```
OPENAI_API_KEY = "your-key"
```
### AbuseIPDB 数据扩充
在侧边栏中启用 **Use AbuseIPDB API** 并粘贴您的 AbuseIPDB 密钥。如果未提供密钥,ThreatLens 仍会执行本地数据扩充,而不进行任何网络调用。
## 测试
```
python -m unittest discover -s tests
```
## 生产环境注意事项
- 在将结果用于自动拦截之前,请先调整阈值。
- 将内部网段、扫描器 IP、uptime 机器人和监控 user agent 保留在白名单中。
- 请勿上传包含密码、token、API 密钥或私人客户数据的日志。
- 将 API 密钥存储在 Streamlit secrets 或您的托管服务提供商的密钥管理器中。
标签:AI辅助, AMSI绕过, IP 地址批量处理, Kubernetes, Petitpotam, Python, Streamlit, 威胁检测, 安全运营中心, 无后门, 网络安全, 网络映射, 访问控制, 逆向工具, 隐私保护