Kenzas172/Projet-Splunk-Mise-en-place-d-un-SIEM-Analyse-de-Logs-Threat-Hunting
GitHub: Kenzas172/Projet-Splunk-Mise-en-place-d-un-SIEM-Analyse-de-Logs-Threat-Hunting
一个以 Splunk 为核心的综合性 SIEM 实验项目,涵盖日志收集、攻击检测、SOC 仪表板构建和威胁狩猎全流程,旨在培养防御性网络安全核心技能。
Stars: 0 | Forks: 0
# Splunk 项目 – 搭建 SIEM、日志分析与威胁狩猎
项目介绍:
本项目汇集了在 SIEM 与日志分析模块中完成的三个实践实验。
总体目标是了解:
- 如何使用 Splunk 收集和分析日志,
- 如何检测真实攻击(SSH 暴力破解),
- 如何构建 SOC 仪表板,
- 如何对复杂数据集(BOTS v1)进行 Threat Hunting 调查。
本项目 100% 以教学为目的,旨在培养防御性网络安全方面的核心技能。
项目目标:
- 安装并配置 Splunk SIEM。
- 收集系统日志(SSH、Fail2Ban)。
- 使用 Hydra 检测暴力破解攻击。
- 构建 SOC 仪表板(Top IP、端口、Suricata 告警等)。
- 分析高级日志(HTTP、Suricata、Windows 事件日志等)。
- 针对攻击场景(BOTS v1)进行完整调查。
使用的工具:
- Splunk Enterprise (SIEM)
- Hydra (SSH 暴力破解攻击)
- Fail2Ban (自动事件响应)
- VirtualBox / Vagrant (虚拟机环境)
- BOTS v1 数据集 (Threat Hunting)
- SPL (Search Processing Language)
实验 1 — 搭建 SIEM 与检测 SSH 攻击
✔️ 目标
配置 Splunk 以收集 Linux 服务器的 SSH 日志,模拟暴力破解攻击并检测该事件。
✔️ 我所做的工作:
- 检查 Splunk 服务状态 (systemctl status splunk)。
- 通过 http://:8000 访问 Web 界面。
- 将 splunk 用户添加到 adm 组以读取 /var/log/auth.log。
- 在 Splunk 中声明数据源:
路径:/var/log/auth.log
源类型 (Sourcetype):syslog
索引 (Index):linux_logs
使用 Hydra 模拟暴力破解攻击:
hydra -l root -P password.txt ssh://
通过以下查询在 Splunk 中进行检测:
index="linux_logs" sourcetype=syslog "Failed password"
| table _time host src_ip _raw
集成 Fail2Ban 日志以观察自动封禁情况。
验证 Splunk + Fail2Ban 的关联性。
✔️ 结果
Splunk 成功检测到暴力破解尝试,并且 Fail2Ban 自动封锁了恶意 IP。
实验 2 — SOC 仪表板 (Top IP、端口、Suricata)
✔️ 目标
创建一个包含多种实用可视化图表的 Splunk 仪表板,以供 SOC 使用。
✔️ 我所做的工作:
构建了以下 SPL 查询:
Top 10 源 IP
index=* | stats count by src_ip | sort - count | head 10
使用频率最高的 10 个端口
index=* | stats count by dest_port | sort - count | head 10
Suricata 告警总数
index=* sourcetype=suricata | stats count as TotalAlerts
Top 5 Suricata 告警
index=* sourcetype=suricata | stats count by signature | sort - count | head 5
✔️ 提出的改进建议
SSH 连接总数(用于暴力破解检测)。
IP 来源 Top 5 国家(地理位置定位)。
按小时统计的流量直方图(用于检测时间异常)。
实验 3 — Threat Hunting (BOTS v1 数据集)
✔️ 目标
分析复杂数据集以识别扫描、Web 攻击、SQLi、暴力破解以及入侵指标。
✔️ 我所做的工作:
1. 对 imreallynotbatman.com 网站的扫描
发起扫描的 IP:40.80.148.42
在 http_referrer 字段中发现的域名。
2. 使用的漏洞扫描器
发现的签名:acunetix_wvs_security_test
使用的扫描器:Acunetix Web Vulnerability Scanner
3. 托管该网站的 Web 服务器
通过 HTTP 请求的目标 IP 进行识别。
4. 使用的 CMS
存在 /joomla/... 路径
CMS:Joomla
5. 攻击类型
SQL Payload → SQL Injection (基于时间)
6. 目标用户
Joomla → 默认管理员账户:admin
7. 尝试的第一个密码
在按时间排序的第一条请求的 form_data 参数中找到。
8. 为攻击准备的域名 IP
通过可疑请求识别 → 40.80.148.42
9. VirusTotal 分析
该 IP 被认为是干净的 (Microsoft Azure)。
场景归因:Poison Ivy 组织(根据 BOTS v1 文档)。
10. WHOIS 查询
通过 Whoxy 进行分析 → 在 WHOIS 历史记录中找到的电子邮件地址。
11. we8105desk 主机的可能 IP
流量分析 → 192.168.2.51
12. bob.smith 插入的 USB 设备
UserPnp 事件 → 设备:Generic Flash Disk
✔️ 结论
本项目使我能够:
- 配置完整的 SIEM,
- 检测 SSH 暴力破解攻击,
- 构建 SOC 仪表板,
- 分析高级日志(HTTP、Suricata、Windows),
- 进行全面的 Threat Hunting 调查,
- 识别扫描、SQLi、暴力破解以及 IoC。
这是一项完整、结构化的工作,真实体现了 SOC 分析师的实际角色。
标签:BOTS v1, DOE合作, Fail2Ban, FOFA, Hydra, Metaprompt, OPA, PB级数据处理, PoC, SOC分析师, SPL, Splunk Enterprise, SSH攻击, Suricata, Threat Hunting, Windows事件日志, 仪表盘, 安全运维, 教学实训, 暴力破解, 现代安全运营, 网络安全, 网络流量分析, 身份验证日志, 隐私保护, 靶场