dawidmarch/soc-lab-splunk

GitHub: dawidmarch/soc-lab-splunk

基于 Splunk Enterprise 的 SIEM 实验环境,在 VirtualBox 隔离网络中实现 Windows 终端日志的集中采集、索引与安全分析。

Stars: 0 | Forks: 0

# SOC-LAB-SPLUNK 本项目展示了基于 Splunk Enterprise 解决方案的 SIEM 系统的部署与配置过程。该实验室的目标是在 Windows 10 上的代理(Universal Forwarder)与 Kali Linux 上的索引服务器之间建立稳定的通信,以实现日志的集中收集和数据流的验证。 ## 硬件与宿主机操作系统 * **宿主机操作系统:** Windows 10 Pro (64-bit) * **处理器 (CPU):** Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz * **内存 (RAM):** 32.0 GB * **硬盘:** SSD Patriot P210 512GB ## 软件栈 * **Hypervisor:** Oracle VirtualBox (版本 7.2.10) – 用于创建隔离网络,虚拟机在 `192.168.0.0/24` 子网内进行通信,从而提供稳定的实验室环境。 * **Splunk Indexer (服务器):** Kali Linux – `192.168.0.105`(主 Splunk Enterprise 实例,通过端口 9997 接收日志)。 * **Endpoint (受害者):** Windows 10 Pro – `192.168.0.110`(已安装 Splunk Universal Forwarder)。 * **攻击者系统:** Kali Linux – `192.168.0.107`(用于生成模拟攻击流量的平台)。 ## 1. 技术实现 部署过程需要对数据管线进行精确配置,并排除网络障碍。 ### 连接配置 3 * **Splunk Receiver:** 在 Linux 服务器 (`192.168.0.105`) 上配置了端口 `9997`,作为接收代理日志的主要入口。 4 * **Universal Forwarder:** 在 Windows 主机 (`192.168.0.110`) 上部署了 `outputs.conf` 和 `inputs.conf` 配置,指定索引服务器为数据传输的目标。 **Windows 上的 `outputs.conf` 配置:** ``` [tcpout] defaultGroup = default-autolb-group [tcpout:default-autolb-group] server = 192.168.0.105:9997 ``` 5 故障排除:关键阶段是网络诊断,包括在 Linux 系统中开放 9997 端口(管理 iptables 及 nftables 规则)以及解决 Windows 系统中的权限问题。在 .md 中 ## 2. 数据流验证("Oneshot" 测试) 为了确认管线是否正常工作,使用 `.\splunk add oneshot` 命令执行了从 Windows 系统向 Splunk 传输测试文件 `hosts` 的测试。测试的成功结果(`Added the following monitor...`)证实了工作站与 SIEM 服务器之间通信的畅通。 **验证命令:** ``` .\splunk add oneshot "C:\Windows\System32\drivers\etc\hosts" -index main -sourcetype test_data ``` ## 3. 运营分析 Splunk 系统中的 Dashboard 已配置为显示来自 Windows 代理的事件。由于数据已被正确索引至 `index=main`,现在可以进行“Threat Hunting”活动以及分析系统日志(`WinEventLog`)。 6 ## 4. 未来发展 * **自动化:** 利用关联规则实现事件的自动检测。 * **Threat Hunting:** 配置 SPL (Splunk Processing Language) 查询,以检测 **MITRE ATT&CK** 技术。 * **扩展:** 添加更多代理,并与外部威胁情报库进行集成。
标签:子域名变形, 安全实验室, 安全运营中心, 日志收集, 网络映射, 虚拟化环境