narnavaramkalpana/SOC-lab
GitHub: narnavaramkalpana/SOC-lab
一个纯前端构建的交互式安全运营中心事件响应实验室仪表板,用于在Kali与Metasploitable虚拟环境中演示完整的IR生命周期。
Stars: 0 | Forks: 0
# SOC 事件响应实验室 - 设置与用户手册
欢迎使用 **SOC 事件响应实验室仪表板**(代号:**Aegis Incident Command**)。本项目展示了完整的事件响应(IR)生命周期——从攻击模拟到检测、调查、遏制、恢复和报告——使用由 **Kali Linux**(攻击者/分析师节点)和 **Metasploitable 2**(受害服务器)组成的虚拟实验室环境。
## 1. 项目安装指南
由于 Aegis 仪表板完全采用纯净的前端技术(HTML5、原生 CSS3、ES6 Javascript)构建,因此它**没有依赖项**(无数据库、无 node modules、无 Docker 配置),并且旨在隔离网络中运行。
### 快速开始(本地浏览器)
1. 将项目文件克隆或复制到您的本地文件夹:
- `index.html`
- `styles.css`
- `app.js`
2. 通过双击直接在任何现代 Web 浏览器(Firefox、Google Chrome、Microsoft Edge、Safari)中打开 `index.html`。
3. 使用您选择的任意分析师用户名进行身份验证:
- **用户名:**(任意自定义名称,例如 `Narnavaram Kalpana`)
- **密码:**(任意自定义密码,例如 `password123`)
### 在本地 Linux Web 服务器上部署
如果您希望在网络中提供该仪表板的服务:
1. 将文件复制到您的 web 根目录(例如 Ubuntu/Debian 上的 `/var/www/html/`):
sudo cp index.html styles.css app.js /var/www/html/
2. 启动 Apache Web 服务器服务:
sudo systemctl start apache2
3. 从网络中的任何主机通过 `http:///index.html` 访问仪表板。
## 2. 物理虚拟化实验室设置
为了在物理上演示攻击、日志生成和遏制步骤,请按照以下步骤构建虚拟网络沙盒:
### 步骤 1:安装 Hypervisor
下载并安装 [Oracle VM VirtualBox](https://www.virtualbox.org/) 或 VMware Workstation。
### 步骤 2:配置虚拟网络适配器
1. 在 VirtualBox 中,转到 **File -> Tools -> Network Manager**。
2. 点击 **Create** 以初始化 Host-Only Ethernet Adapter(通常在 Linux/macOS 上命名为 `vboxnet0`,或在 Windows 上命名为 `VirtualBox Host-Only Network`)。
3. 将 IPv4 地址参数设置为:`192.168.56.1`,子网掩码为:`255.255.255.0`。禁用 DHCP 服务器选项卡以手动分配静态 IP。
### 步骤 3:安装 Kali Linux 虚拟机
1. 从 [Kali Linux 官方下载](https://www.kali.org/) 下载预构建的 VirtualBox 镜像。
2. 将虚拟机导入 VirtualBox。
3. 在 Kali 的虚拟机设置中,转到 **Network** 选项卡:
- 设置 **Attached to:** 为 `Host-Only Adapter`。
- 选择在步骤 2 中创建的适配器。
4. 启动机器并配置静态 IP:
- IP: `192.168.56.102`
- Netmask: `255.255.255.0`
### 步骤 4:安装 Metasploitable 2 虚拟机
1. 从 SourceForge 下载 Metasploitable 2 zip 文件。
2. 解压并将 `.vmdk` 虚拟磁盘导入到 VirtualBox 内的全新 Linux 虚拟机配置中。
3. 设置网络配置:
- **Attached to:** `Host-Only Adapter`(与 Kali 相同的适配器)。
4. 启动 Metasploitable(默认登录凭据:`msfadmin` / `msfadmin`)。
5. 配置静态 IP 地址。编辑 `/etc/network/interfaces`:
sudo nano /etc/network/interfaces
修改 `eth0` 设置:
auto eth0
iface eth0 inet static
address 192.168.56.101
netmask 255.255.255.0
gateway 192.168.56.1
应用更改:
sudo /etc/init.d/networking restart
6. 从 Metasploitable ping Kali 以验证连接:`ping 192.168.56.102`。
## 3. 交互式演示与演示指南
本指南描述了如何为评审人员运行 B.Tech 项目演示:
### 步骤 1:Bootloader 加载动画
- 打开应用程序。**Splash Screen** 会播放一段时长 3 秒的网络主题加载动画,代表系统诊断检查,随后呈现安全登录屏幕。
### 步骤 2:分析师登录身份验证
- 输入任意用户名(例如 `Narnavaram Kalpana` 或 `analyst`)和密码。按回车键加载中央控制台仪表板。请注意,这里没有注册链接——代表这是一个安全的、私有的企业 SOC。
### 步骤 3:中央操作仪表板
- 分析师会看到概览指标:活动告警、严重事件、已解决威胁和受监控节点。
- 中间是图表,显示了受监控的 Metasploitable 目标的整体**威胁严重性分布**(严重、高、中、低)以及**系统健康指标**(CPU/内存负载和网络速度)。
### 步骤 4:漏洞扫描
- 导航到 **Vulnerability Scanner** 选项卡。
- 点击 **Launch Nmap Vulnerability Scan**。
- 观察 Nmap 扫描仪控制台命令实时运行,执行服务识别查询。
- 完成后,漏洞 CVE 表将填充 CVE-2011-2523(vsftpd 后门)、CVE-2008-5619(Web 注入)和 CVE-2003-0201(Samba 缓冲区溢出)。
### 步骤 5:漏洞利用模拟
- 导航到 **Attack Simulation** 页面。
- 选择 **1. VSFTPD 2.3.4 Backdoor**。
- 点击 **Launch Exploit Simulation**。
- Kali 终端模拟活动的 telnet payload 传输笑脸后门字符串 `USER admin:)` 并连接到端口 6200。
- 仪表板上会触发一个严重事件告警。
### 步骤 6:日志调查
- 转到 **Log Analysis** 页面。
- 使用过滤器显示 **Authentication Logs (auth.log)**。注意红色高亮显示的行:`ALERT: Connection established from 192.168.56.102 to backdoor port 6200`。
- 搜索关键字 `backdoor` 以过滤系统日志。
- 点击 **Download Logs** 导出 CSV 审计表。
### 步骤 7:取证储物柜
- 导航到 **Evidence Collection** 页面。
- 观察现有的证据文件(core dumps、日志片段)及其 MD5 哈希值。
- 点击 **Capture Active Incident Evidence** 以使用生成的哈希值保存当前事件状态,验证证据保管链。
### 步骤 8:遏制
- 转到 **Containment** 页面。
- 选择 **Block Attacker IP**。该规则将附加到 iptables 活动 firewall 规则中,活动告警状态将更新为已缓解。
- 选择 **Kill Backdoor Port Process** 以关闭端口 6200 上的 listener。
### 步骤 9:根除与恢复
- 导航到 **Recovery** 页面。
- 应用安全补丁并重置弱凭据。验证清单审核将从 `FAIL` 变为 `PASS`。
### 步骤 10:生成报告
- 导航到 **Reports Center**。
- 点击 **Compile & Export** 获取“完整安全事件简报”。
- 打印或将生成的报告保存为 PDF。
## 4. 演示幻灯片大纲
如果您正在为项目演示准备幻灯片,请使用以下大纲:
* **幻灯片 1:** 标题和项目详情(B.Tech 网络安全项目:使用 Kali 和 Metasploitable 的 SOC 事件响应实验室)。
* **幻灯片 2:** 问题陈述(需要隔离的沙盒来培训安全分析师掌握事件响应框架)。
* **幻灯片 3:** 项目目标(威胁模拟、日志跟踪、遏制规则自动化和报告工作流)。
* **幻灯片 4:** 系统架构(Kali Linux -> Metasploitable 2 Host-Only 网络拓扑)。
* **幻灯片 5:** 威胁场景演示(VSFTPD 笑脸后门 CVE-2011-2523、SSH 字典暴力破解、Samba 溢出)。
* **幻灯片 6:** SOC 仪表板设计(暗色模式毛玻璃效果、响应式侧边栏布局、SVG 实现)。
* **幻灯片 7:** 事件响应生命周期(侦查 -> 枚举 -> 漏洞利用 -> 检测 -> 遏制 -> 根除 -> 恢复 -> 报告)。
* **幻灯片 8:** 未来展望与强化(添加 Wazuh HIDS agent、Suricata NIDS、Elastic SIEM 集成)。
## 5. 答辩 / 评估问答
请准备好在答辩评审环节回答以下问题:
**Q1:什么是安全运营中心(SOC)?**
* **答:** 组织内的集中式安全部门,负责实时监控、检测、分析和响应网络、endpoint 和服务器上的网络安全事件。
**Q2:什么是事件响应生命周期?**
* **答:** 基于 NIST SP 800-61 r2,它包括:准备、检测与分析、遏制、根除与恢复以及事件后活动(经验教训)。
**Q3:VSFTPD 2.3.4 后门漏洞利用是如何运作的?**
* **答:** 如果用户名以笑脸 `:)` 结尾,vsftpd daemon 会在端口 6200 上生成一个以 `root` (UID 0) 身份运行的 shell listener,从而授予攻击者完全的远程控制访问权限。
**Q4:在取证储物柜中对证据进行哈希处理的目的是什么?**
* **答:** 为了保证完整性并建立证据保管链。如果证据文件的哈希值发生变化,则表明该日志文件已被更改或篡改。
**Q5:在 Linux 中如何进行网络主机隔离?**
* **答:** 通过运行 `ifconfig eth0 down` 或删除默认路由,阻止虚拟机在网络中传输数据包。
## 6. 未来项目增强
如果被问及如何扩展此实验室:
1. **Agent 集成:** 在 Metasploitable 上部署 **Wazuh HIDS agent** 以解析日志并将告警发送到集中式管理器。
2. **IDS 部署:** 在网桥上部署 **Snort** 或 **Suricata** IDS 以拦截流量并自动生成告警。
3. **日志集中化:** 部署 **Elasticsearch, Logstash, Kibana (ELK)** stack 以集中化和搜索来自多个脆弱虚拟机的系统日志。
标签:后端开发, 安全实验环境, 安全运营中心, 库, 应急响应, 纯静态仪表盘, 网络映射