nom4dWare/soc-kaz
GitHub: nom4dWare/soc-kaz
一个基于Streamlit的SOC仪表板,集成日志分析、ML异常检测和安全事件关联引擎,帮助中小企业自动化安全监控。
Stars: 0 | Forks: 0
# SOC Shield — CINEMAX 安全平台
## 技术栈:Python 3.11 + Streamlit + scikit-learn
### 快速启动(3个命令)
```
cd soc_streamlit
pip install -r requirements.txt
streamlit run app.py
```
在浏览器中打开:http://localhost:8501
### 演示账户
| 登录名 | 密码 | 角色 | 权限 |
|-----------|-------------|----------|---------------------------------|
| admin | admin123 | admin | 完全访问权限 |
| analyst1 | analyst123 | analyst | 事件、告警、SAST、规则 |
| viewer | viewer123 | readonly | 仅查看 |
### 功能模块
| 模块 | 描述 |
|---------------------|--------------------------------------------------------------|
| 🏠 仪表板 | 实时指标、攻击时间线、TOP IP |
| 📋 事件 | 上传 cinema_access.log,手动分析参数 |
| 🚨 告警 | 管理告警,更改状态,封锁IP |
| 🎯 MITRE ATT&CK | 交互式矩阵,高亮已触发的技术手法 |
| 🔬 SAST | AST 污点分析代码,检测 CWE/CVE 漏洞 |
| 🤖 ML 模型 | Isolation Forest 指标,XAI 解释,模型重训练 |
| ⚙️ 规则 | 关联规则的 CRUD(YAML 配置) |
| 👥 用户 | RBAC 管理:创建、角色分配、停用账户 |
| 📜 审计 | 所有用户操作的完整日志 |
### 项目结构
```
soc_streamlit/
├── app.py # Точка входа, авторизация, роутер
├── requirements.txt
│
├── ml/
│ ├── detector.py # Isolation Forest + 6 признаков + XAI
│ └── models/ # Сохранённая модель (создаётся автоматически)
│
├── sast/
│ └── scanner.py # AST taint-анализ (source → sink)
│
├── services/
│ ├── db.py # JSON-файловая БД (без PostgreSQL)
│ ├── auth.py # JWT-like сессии + RBAC
│ ├── correlation.py # Движок корреляции + Log Ingestor
│ └── audit.py # Журнал действий пользователей
│
├── pages/
│ ├── dashboard.py # Главный дашборд
│ ├── events.py # Поток событий + загрузка логов
│ ├── alerts.py # Управление алертами
│ ├── mitre.py # MITRE ATT&CK матрица
│ ├── sast_page.py # SAST анализ кода
│ ├── ml_page.py # ML метрики и XAI
│ ├── rules.py # Правила корреляции
│ ├── user_mgmt.py # Управление пользователями
│ └── audit.py # Аудит-лог
│
├── configs/
│ └── correlation_rules.yaml # 8 правил обнаружения атак
│
└── data/ # Автосоздаётся при первом запуске
├── events.json
├── alerts.json
├── users.json
├── blocked_ips.json
├── sast_findings.json
└── audit_logs.json
```
### ML 模型:Isolation Forest
**6个特征(特征工程):**
| 特征 | 描述 |
|------------------------|------------------------------------------------|
| normalized_length | 字符串长度 / 500(归一化到 [0,1]) |
| shannon_entropy | 香农熵 / 8(归一化到 [0,1]) |
| special_char_density | 特殊字符( ' ; < > & 等)的比例 |
| sql_score | SQL 模式匹配数 / 5 |
| xss_score | XSS 模式匹配数 / 3 |
| path_ssti_score | Path/SSTI 模式匹配数 / 4 |
**测试集指标(n=200):**
| 指标 | 数值 |
|-------------|--------|
| 准确率 | ~87% |
| 精确率 | ~89% |
| 召回率 | ~84% |
| F1分数 | ~86% |
| 误报率 | ~11% |
### SAST:可检测的漏洞
| CWE | 类型 | MITRE |
|---------|----------------------------|------------|
| CWE-94 | SSTI (render_template_str) | T1059.003 |
| CWE-89 | SQL 注入 (execute) | T1190 |
| CWE-78 | 操作系统命令注入 | T1059.004 |
| CWE-95 | 远程代码执行 (eval, exec) | T1059.006 |
| CWE-22 | 路径遍历 (open) | T1083 |
| CWE-312 | 硬编码密码 | T1552 |
| CWE-321 | 硬编码 API 密钥 | T1552 |
| CWE-502 | 不安全的反序列化 | T1059 |
| CWE-117 | 日志注入 | T1565 |
### 学术论文相关
**研究背景:** 影院系统处理个人和支付数据,但通常没有专门的 SOC 团队。威胁检测自动化对于中小企业组织至关重要。
**创新点:** 将 ML 异常检测(Isolation Forest)、SAST 污点分析和关联引擎集成到一个统一平台中,结合 XAI 解释和针对影院信息系统的 MITRE ATT&CK 映射。
**SOC 效能指标:**
- MTTD (平均检测时间): 从攻击发生到生成告警的时间
- MTTR (平均响应时间): 从告警生成到采取措施的时间
- 误报率: 误报的比例
- 告警覆盖率: 规则所覆盖的 ATT&CK 技术手法的百分比
标签:AMSI绕过, Apex, Cloudflare, ISO森林, Kubernetes, MITRE ATT&CK, Python, scikit-learn, Streamlit, XAI可解释性, 事件关联, 云计算, 仪表板, 信息收集自动化, 告警管理, 威胁检测, 安全专业人员, 安全事件, 安全信息和事件管理, 安全运营中心, 异常检测, 无后门, 日志摄取, 机器学习, 用户管理, 网络安全, 网络映射, 规则引擎, 角色访问控制, 访问控制, 逆向工具, 隐私保护, 静态应用安全测试