o1uoyebanji/SOC-Simulation-Lab

GitHub: o1uoyebanji/SOC-Simulation-Lab

基于 Splunk SIEM 和虚拟化环境构建的 SOC 模拟实验室,用于检测和分析 SSH 暴力破解与端口扫描攻击。

Stars: 0 | Forks: 0

# SOC-Simulation-Lab ## 概述 构建了一个安全运营中心(SOC)模拟环境,使用行业标准工具检测和分析真实世界的网络攻击。配置了多虚拟机实验环境,模拟了暴力破解和侦察攻击,并在 Splunk 中构建了检测逻辑、警报和仪表板。 ## 架构 Kali Linux -> Ubuntu 目标机 -> Splunk SIEM - **Kali Linux** — 运行 Hydra 和 Nmap 的攻击机 - **Ubuntu** — 运行 SSH 和 Splunk 的目标受害机 - **Splunk Enterprise** — 用于摄取和分析日志的 SIEM ## 使用的工具 - Splunk Enterprise 10.4.0 - Kali Linux - Ubuntu 22.04 - Hydra - Nmap - VirtualBox ## 我所做的工作 ### 1. 网络设置 - 在隔离的 Host-Only 网络上配置了两台虚拟机 - 验证了攻击机与目标机之间的通信 ### 2. Splunk 配置 - 在 Ubuntu 虚拟机上安装了 Splunk Enterprise - 安装了 Splunk Universal Forwarder 以便同时将日志发送至 Splunk - 监控了 /var/log/auth.log 和 /var/log/syslog ### 3. 攻击模拟 - **SSH 暴力破解** — 使用 Hydra 携带 rockyou.txt 字典对 Ubuntu SSH 发起攻击,产生了 129 次失败的登录尝试 - **端口扫描** — 使用 Nmap SYN 扫描 (-sS) 枚举目标机上的所有开放端口 ### 4. 在 Splunk 中进行检测 编写了 SPL 查询以检测攻击模式: -- 检测失败的登录 index=main "Failed password" -- 按攻击者主机聚合 index=main "Failed password" | stats count by host -- 随时间可视化攻击 index=main "Failed password" | timechart count span=1m -- 端口扫描证据 index=main port ### 5. 创建的警报 - 名称:检测到 SSH 暴力破解 - 条件:结果数量大于 10 - 严重程度:高 - 操作:添加至已触发警报 ### 6. 构建的仪表板 - 包含 3 个面板的 SOC 实验监控仪表板: - 随时间变化的失败登录(折线图) - 主要攻击主机(条形图) - 总日志事件(单值 — 15966) ## 关键发现 - 检测到来自 Kali (192.168.100.4) 的 129 次失败的 SSH 登录尝试 - 使用 timechart 可视化识别出下午 3:16 的攻击高峰 - Nmap 扫描显示有 5 个开放端口,分别是:22, 8000, 8089, 8191, 9997 - 所有 Splunk 端口均可见,证实了真实的攻击面 ## 截图 请参阅 /screenshots 文件夹获取完整文档,包括: - Splunk 仪表板 - Hydra 暴力破解输出 - Nmap 扫描结果 - 检测查询 - 警报配置 - SOC 实验监控仪表板 ## 我学到了什么 - SIEM 如何摄取和规范化来自多个源的日志 - 如何编写 SPL 查询以检测暴力破解模式 - 攻击者如何使用 Nmap SYN 扫描枚举开放端口 - 如何构建基于阈值的警报以实现自动化检测 - 日志关联在识别攻击模式中的重要性
标签:CTI, 安全运营中心, 插件系统, 攻击模拟, 生成式AI安全, 网络映射, 虚拟机, 驱动签名利用