justinjudefernandes/Splunk-SIEM-Fundamentals-Security-Monitoring
GitHub: justinjudefernandes/Splunk-SIEM-Fundamentals-Security-Monitoring
一个基于 Splunk 的 SIEM 基础实践项目,通过搭建完整的日志收集与分析环境来培养安全运营中心所需的威胁检测与安全监控技能。
Stars: 0 | Forks: 0
# Splunk SIEM 基础与安全监控
## 🎯 目标:
通过部署 Splunk 环境、接入多种安全日志源、执行基于 SPL 的调查、创建仪表盘和告警,并实施 SOC 分析员常用的安全监控用例,培养基础的 Splunk SIEM 技能。
## 📊 项目概述:
本项目专注于构建一个功能完备的 Splunk 实验环境,以理解核心 SIEM 操作。活动包括安装和配置 Splunk、接入多种日志源、转发 Windows 事件日志、执行基于 SPL 的调查、创建仪表盘和告警、使用 lookup 丰富数据,以及开发安全监控用例。该项目利用 Windows、Sysmon、Defender、PowerShell、Zeek 和 Suricata 日志,模拟了真实环境下的 SOC 分析员任务和安全调查。
## 🖥️ 实验环境设置:
### 🧰 使用工具:
- Splunk Enterprise
- Splunk Universal Forwarder
- 搜索处理语言 (SPL)
- Ubuntu Linux
- Windows 10
- Sysmon
- Microsoft Defender 日志
- Windows 事件日志
- PowerShell 日志
- Zeek 日志
- Suricata 日志
- CSV Lookup 表
### 🛡️ 培养技能:
- Splunk SIEM 管理
- 日志收集与数据接入
- Index 管理
- Forwarder 配置
- SPL 查询开发
- 搜索优化
- 字段提取 (REX & EVAL)
- 数据解析与标准化
- 安全事件分析
- 仪表盘开发
- 告警工程
- 计划报告
- Lookup 表丰富
- 安全监控与威胁狩猎基础
### 📁 关键交付成果:
- Splunk Enterprise 部署
- Universal Forwarder 配置
- Windows 安全日志收集
- 自定义日志接入
- SPL 搜索库
- 搜索时字段提取
- 威胁狩猎查询
- Lookup 表实施
- Linux 活动仪表盘
- 暴力破解检测告警
- 每周登录失败报告
- 针对 Windows 和 Sysmon 的 Splunk Add-on 部署
## 🔍 执行步骤:
### 1. Splunk 部署与配置
- 在 Ubuntu 上安装 Splunk Enterprise。
- 配置 Splunk 服务和 Web 界面。
- 启用自动启动并验证功能。
- 配置 UTC 时间设置。
#### 📌 截图如下:(从左至右)
### 2. Index 创建
- 学习 Splunk 索引概念。
- 创建名为 mydfir-soc 的专用安全监控 index。
#### 📌 截图如下:(从左至右)
### 3. 数据接入与 Forwarder 配置
- 在 Windows 上安装 Splunk Universal Forwarder。
- 配置接收端口 9997。
- 修改 inputs.conf 以收集 Windows 安全和应用程序日志。
- 将日志转发到 Splunk indexer 并验证接收情况。
#### 📌 截图如下:(从左至右)
### 4. 自定义日志接入
- 上传并接入自定义数据集,包括:
- 应用程序日志
- 安全日志
- Sysmon 日志
- PowerShell 日志
- Microsoft Defender 日志
- Zeek 日志
- Suricata 日志
- 系统日志
- 配置 sourcetype、时间戳、主机和 index。
#### 📌 截图如下:(从左至右)
### 5. 解析与字段提取
- 学习索引时和搜索时的解析。
- 使用正则表达式 (REX) 执行字段提取。
- 从身份验证日志中提取用户和源 IP 字段。
- 跨数据集验证提取的字段。
#### 📌 截图如下:(从左至右)
### 6. SPL 查询开发
- 使用 Job Inspector 比较查询性能。
- 了解到字段名称区分大小写,而字段值不区分。
- 回顾了 Splunk 中不同的搜索模式:
- Fast Mode – 显示有限的的相关字段集,以优化搜索性能。
- Smart Mode – 显示更广泛的的相关字段集,同时平衡性能与细节。
- Verbose Mode – 显示所有可用字段和事件数据,提供最全面的搜索结果。
- 使用转换命令时,Smart 和 Verbose 搜索模式之间的主要区别会显现出来:
- Smart Mode – 仅显示生成的统计信息和可视化效果;不显示底层事件。
- Verbose Mode – 在生成的统计信息和可视化效果旁边显示原始事件,提供对搜索结果的完整可见性。
- 应用了 Splunk 搜索最佳实践。
- 使用以下命令开发了优化的 SPL 查询:
- fields
- table
- where
- sort
- dedup
- stats
- timechart
- eval
- fillnull
- coalesce
- 使用这些转换命令生成统计信息和趋势。
- 执行事件聚合和基于时间的分析。
- 使用 stats 和 timechart 命令创建摘要。
#### 📌 截图如下:(从左至右)
### 7. Lookup 表丰富
- 创建了 VIP 用户 lookup 表。
- 上传 lookup 数据并将其集成到搜索中。
- 使用用户角色信息丰富安全事件。
#### 📌 截图如下:(从左至右)
### 8. 安全仪表盘创建
- 设计了 Linux 活动仪表盘。
- 实现了以下面板:
- 用户登录失败排行
- 按小时统计的登录失败次数
- 成功登录
- 将身份验证活动可视化以进行安全监控。
#### 📌 截图如下:(从左至右)
### 9. 创建可操作告警
- 开发了暴力破解检测告警。
- 配置为每分钟执行一次的计划任务。
- 测试告警触发并验证告警管理工作流。
#### 📌 截图如下:(从左至右)
### 10. 计划报告
- 创建了每周登录失败报告。
- 安排了自动报告生成以供 SOC 审查。
#### 📌 截图如下:(从左至右)
### 11. Splunk App 集成
- 安装并验证了:
- Splunk Add-on for Microsoft Windows
- Splunk Add-on for Sysmon
- 增强了字段提取和日志标准化能力。
#### 📌 截图如下:(从左至右)
### 🧰 使用工具:
- Splunk Enterprise
- Splunk Universal Forwarder
- 搜索处理语言 (SPL)
- Ubuntu Linux
- Windows 10
- Sysmon
- Microsoft Defender 日志
- Windows 事件日志
- PowerShell 日志
- Zeek 日志
- Suricata 日志
- CSV Lookup 表
### 🛡️ 培养技能:
- Splunk SIEM 管理
- 日志收集与数据接入
- Index 管理
- Forwarder 配置
- SPL 查询开发
- 搜索优化
- 字段提取 (REX & EVAL)
- 数据解析与标准化
- 安全事件分析
- 仪表盘开发
- 告警工程
- 计划报告
- Lookup 表丰富
- 安全监控与威胁狩猎基础
### 📁 关键交付成果:
- Splunk Enterprise 部署
- Universal Forwarder 配置
- Windows 安全日志收集
- 自定义日志接入
- SPL 搜索库
- 搜索时字段提取
- 威胁狩猎查询
- Lookup 表实施
- Linux 活动仪表盘
- 暴力破解检测告警
- 每周登录失败报告
- 针对 Windows 和 Sysmon 的 Splunk Add-on 部署
## 🔍 执行步骤:
### 1. Splunk 部署与配置
- 在 Ubuntu 上安装 Splunk Enterprise。
- 配置 Splunk 服务和 Web 界面。
- 启用自动启动并验证功能。
- 配置 UTC 时间设置。
#### 📌 截图如下:(从左至右)
### 2. Index 创建
- 学习 Splunk 索引概念。
- 创建名为 mydfir-soc 的专用安全监控 index。
#### 📌 截图如下:(从左至右)
### 3. 数据接入与 Forwarder 配置
- 在 Windows 上安装 Splunk Universal Forwarder。
- 配置接收端口 9997。
- 修改 inputs.conf 以收集 Windows 安全和应用程序日志。
- 将日志转发到 Splunk indexer 并验证接收情况。
#### 📌 截图如下:(从左至右)
### 4. 自定义日志接入
- 上传并接入自定义数据集,包括:
- 应用程序日志
- 安全日志
- Sysmon 日志
- PowerShell 日志
- Microsoft Defender 日志
- Zeek 日志
- Suricata 日志
- 系统日志
- 配置 sourcetype、时间戳、主机和 index。
#### 📌 截图如下:(从左至右)
### 5. 解析与字段提取
- 学习索引时和搜索时的解析。
- 使用正则表达式 (REX) 执行字段提取。
- 从身份验证日志中提取用户和源 IP 字段。
- 跨数据集验证提取的字段。
#### 📌 截图如下:(从左至右)
### 6. SPL 查询开发
- 使用 Job Inspector 比较查询性能。
- 了解到字段名称区分大小写,而字段值不区分。
- 回顾了 Splunk 中不同的搜索模式:
- Fast Mode – 显示有限的的相关字段集,以优化搜索性能。
- Smart Mode – 显示更广泛的的相关字段集,同时平衡性能与细节。
- Verbose Mode – 显示所有可用字段和事件数据,提供最全面的搜索结果。
- 使用转换命令时,Smart 和 Verbose 搜索模式之间的主要区别会显现出来:
- Smart Mode – 仅显示生成的统计信息和可视化效果;不显示底层事件。
- Verbose Mode – 在生成的统计信息和可视化效果旁边显示原始事件,提供对搜索结果的完整可见性。
- 应用了 Splunk 搜索最佳实践。
- 使用以下命令开发了优化的 SPL 查询:
- fields
- table
- where
- sort
- dedup
- stats
- timechart
- eval
- fillnull
- coalesce
- 使用这些转换命令生成统计信息和趋势。
- 执行事件聚合和基于时间的分析。
- 使用 stats 和 timechart 命令创建摘要。
#### 📌 截图如下:(从左至右)
### 7. Lookup 表丰富
- 创建了 VIP 用户 lookup 表。
- 上传 lookup 数据并将其集成到搜索中。
- 使用用户角色信息丰富安全事件。
#### 📌 截图如下:(从左至右)
### 8. 安全仪表盘创建
- 设计了 Linux 活动仪表盘。
- 实现了以下面板:
- 用户登录失败排行
- 按小时统计的登录失败次数
- 成功登录
- 将身份验证活动可视化以进行安全监控。
#### 📌 截图如下:(从左至右)
### 9. 创建可操作告警
- 开发了暴力破解检测告警。
- 配置为每分钟执行一次的计划任务。
- 测试告警触发并验证告警管理工作流。
#### 📌 截图如下:(从左至右)
### 10. 计划报告
- 创建了每周登录失败报告。
- 安排了自动报告生成以供 SOC 审查。
#### 📌 截图如下:(从左至右)
### 11. Splunk App 集成
- 安装并验证了:
- Splunk Add-on for Microsoft Windows
- Splunk Add-on for Sysmon
- 增强了字段提取和日志标准化能力。
#### 📌 截图如下:(从左至右)
标签:AMSI绕过, Metaprompt, 威胁检测, 安全运营, 扫描框架