CyberrSherif/Cyber-Control-Tower
GitHub: CyberrSherif/Cyber-Control-Tower
一个基于 Web 的 SOC 模拟平台,通过从日志提取到事件响应的完整工作流来展示安全运营中心的核心概念与实践。
Stars: 0 | Forks: 0
# Cyber Control Tower (CCT)
Cyber Control Tower (CCT) 是一个基于 Web 的网络安全 SOC 模拟平台,是我在埃及通信和信息技术部进行 **DEPI 实习** 期间开发的。
该项目模拟了安全运营中心 (SOC) 如何监控、分析、关联和响应网络安全事件。它获取原始的安全日志数据,将其标准化为事件,将相关活动关联为事件,将威胁映射到 **MITRE ATT&CK**,计算风险和信任评分,并在交互式仪表板中显示结果。
## 主要功能
* 从 CSV 数据集中提取安全日志
* 将事件标准化为标准格式
* 从相关安全事件中进行事件关联
* 带有严重程度和状态追踪的事件分诊
* 可解释的风险评分
* MITRE ATT&CK 映射和热力图
* 用于用户、资产和网络段的 Cyber Digital Twin 图谱
* 用于评估用户行为风险的 Trust Score 排行榜
* MTTD 和 MTTR 安全性能指标
* 针对事件的 Threat Hunting 搜索
* 带有模拟 SOC 操作的响应 playbook
* 用于调查和交接的分析师备注
* 用于记录登录、搜索、操作和状态变更的审计追踪
* 针对安全分析师和 SOC 经理的基于角色的访问控制
## 技术栈
### 后端
* Python
* Flask
* pandas
* NetworkX
### 前端
* HTML
* CSS
* JavaScript
### 数据
* 基于 CSV 的网络安全日志数据集
## 项目结构
```
Cyber-Control-Tower-CCT/
├── backend/
│ ├── app.py
│ ├── api/
│ ├── auth/
│ ├── correlation/
│ ├── data/
│ ├── graph/
│ ├── ingestion/
│ ├── metrics/
│ ├── mitre/
│ ├── response/
│ ├── search/
│ ├── trust_score/
│ ├── requirements.txt
│ └── test_api.py
│
├── frontend/
│ └── index.html
│
├── notebooks/
├── run.bat
├── run.sh
├── PROJECT_TEST_REPORT.md
├── SUBMISSION_CHANGES.md
└── README.md
```
## 如何运行项目
### 1. 克隆仓库
```
git clone https://github.com/your-username/Cyber-Control-Tower-CCT.git
cd Cyber-Control-Tower-CCT
```
### 2. 创建虚拟环境
```
python -m venv .venv
```
### 3. 激活虚拟环境
对于 Windows:
```
.venv\Scripts\activate
```
对于 Linux/macOS:
```
source .venv/bin/activate
```
### 4. 安装依赖项
```
pip install -r backend/requirements.txt
```
### 5. 运行应用程序
```
python backend/app.py
```
然后在浏览器中打开此 URL:
```
http://127.0.0.1:5000
```
## 快速启动脚本
你也可以使用包含的运行脚本。
### Windows
```
run.bat
```
### Linux/macOS
```
chmod +x run.sh
./run.sh
```
## 演示账号
| 角色 | 用户名 | 密码 |
| ---------------- | --------- | ------------ |
| 安全分析师 | `analyst` | `analyst123` |
| SOC 经理 | `manager` | `manager123` |
**安全分析师** 可以查看和对事件进行分诊。
**SOC 经理** 可以访问其他功能,例如 Trust Score、MTTD/MTTR 指标和系统健康状况。
## 测试
要测试后端 API,请运行:
```
python backend/test_api.py
```
预期结果:
```
All 90 checks passed.
```
## 系统工作原理
该项目遵循简单的 SOC 工作流程:
1. **提取**
从 CSV 数据集中加载原始网络安全日志。
2. **标准化**
将日志转换为更清晰、更一致的事件格式。
3. **关联**
将相关事件分组为事件,而不是作为单独的告警显示。
4. **MITRE 映射**
将事件映射到 MITRE ATT&CK 战术和技术。
5. **风险评分**
每个事件都会根据严重程度、事件量、攻击链置信度和 MITRE 战术关键性获得可解释的风险评分。
6. **调查**
分析师可以查看事件详细信息、搜索威胁、添加备注和更新事件状态。
7. **响应**
系统会推荐响应 playbook,并允许分析师模拟 SOC 操作,例如端点隔离、IP 封锁、证据收集和密码重置。
8. **报告和指标**
仪表板显示 SOC 性能指标,例如 MTTD、MTTR、风险摘要、Trust Score 和审计历史记录。
## 重要页面
* **Command Center** – 主概览仪表板
* **Incident Triage** – 查看、调查和更新事件
* **MITRE Heatmap** – 查看攻击战术和技术
* **Cyber Digital Twin** – 用户、资产、网络段和事件的图谱视图
* **Threat Hunting** – 搜索关联的事件
* **Trust Score** – 查看用户行为风险评分
* **MTTD / MTTR** – 分析检测和响应性能
* **Audit Trail** – 审查用户操作和系统活动
## 项目目的
该项目的目标是展示不同的网络安全概念如何在 SOC 环境中相互连接。CCT 不仅仅是显示原始告警,而是创建了一个从日志分析到事件响应的完整工作流。
该项目帮助我实践了:
* SOC 监控
* 日志分析
* 事件关联
* Threat Hunting
* MITRE ATT&CK 映射
* 风险评分
* 事件响应
* 仪表板开发
* 后端 API 开发
* 基于角色的访问控制
## 局限性
该项目是一个模拟项目,不适用于真实的生成环境。
当前的局限性:
* 使用本地 CSV 数据集而不是实时的 SIEM 数据
* 将演示用户和审计日志存储在内存中
* 模拟响应操作,而不是真实的 SOAR 集成
* 没有生产级数据库
* 没有针对实时部署进行安全加固
未来的改进可能包括:
* 数据库集成
* 实时 SIEM 连接器,例如 Wazuh 或 Splunk
* 真实的 SOAR 自动化
* 持久的用户管理
* 更高级的威胁检测规则
* 身份验证加固
* 云部署
## 作者
**Sherif Mahmoud**
网络安全学生
DEPI 实习生
标签:Flask, SOC平台, 多模态安全, 安全运营, 扫描框架, 数据可视化, 特权检测, 网络安全, 逆向工具, 隐私保护