Paulcyber06/E3-Splunk-Behavioral-Analysis

GitHub: Paulcyber06/E3-Splunk-Behavioral-Analysis

一份基于Splunk的可疑IP行为分析实战教程,演示如何利用SPL命令对Web日志进行深度调查,揭示隐藏在正常流量中的侦察行为并给出SOC运营响应建议。

Stars: 0 | Forks: 0

# 第 3 集 — Splunk:可疑 IP 的行为分析 ## 📚 目录 - [1. 背景](#1-contexte) - [2. 验证成功访问](#2-vérification-des-accès-réussis) - [3. 使用 stats 分析 — 访问最多的页面](#3-analyse-avec-stats--pages-les-plus-accédées) - [4. 使用 top 分析 — 确认](#4-analyse-avec-top--confirmation) - [5. 使用 timechart 进行时间分析](#5-analyse-temporelle-avec-timechart) - [6. 按状态码详细视图](#6-vue-détaillée-par-status-code) - [7. 总结](#7-conclusion) - [8. SOC 运营响应](#8-réponse-opérationnelle-soc) ## 1. 背景 继第 1 集检测到侦察活动后,SOC 对可疑 IP `87.194.216.51` 展开了进一步调查。目标是了解其完整行为——不仅限于 404 错误,而是其与 Buttercup Games Web 服务器的所有交互。 攻击者仍未找到 `/passwords.pdf`。但其持续 7 天的活动表明,他们正在寻找其他的入侵途径。 ## 2. 验证成功访问 首先检查该 IP 是否有成功的请求(状态码 200): ``` index=main sourcetype="access_combined_wcookie" status=200 clientip=87.194.216.51 | table _time, status, uri ``` 我们获得了 **894 个** 状态码为 200 的事件。 [![894 次成功访问 — 状态码 200](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/87b701274b033538.png)](1.png) 与第 1 集相比,结论发生了根本性变化。该 IP 不仅在进行侦察——它还在积极使用该网站。我们可以在结果中看到: | URI | 含义 | |-----|--------------| | `/cart.do?action=purchase` | 已完成购买 | | `/cart/success.do` | 交易成功 | | `/product.screen` | 浏览产品页面 | ## 3. 使用 `| stats` 分析 — 访问最多的页面 为了将这 894 个事件转化为可操作的数据,我们使用 `| stats` 按 URI 计算访问次数: ``` index=main sourcetype="access_combined_wcookie" status=200 clientip=87.194.216.51 | stats count by uri | sort -count | head 10 ``` **此命令的作用:** - `stats count by uri` — 按页面统计访问次数 - `sort -count` — 从最高到最低排序(`-` 号 = 降序) - `head 10` — 仅保留前 10 个结果 [![Stats — 访问量前 10 的页面](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/7952b88b4a033539.png)](2.png) 结果证实,该 IP 主要访问产品页面并执行实际交易。 ## 4. 使用 `| top` 分析 — 确认 我们使用 `| top` 来确认该 IP 在所有活动中(不限状态码)最频繁访问的 URI: ``` index=main sourcetype="access_combined_wcookie" clientip=87.194.216.51 | top uri showperc=false limit=5 ``` **此命令的作用:** - `top uri` — 自动返回最频繁的值及其计数 - `showperc=false` — 移除百分比列 - `limit=5` — 限制为前 5 个值 [![前 5 个最频繁的 URI](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/cb2f4c163a033540.png)](3.png) 最频繁的 5 个 URI 都是 `/product.screen` — 该 IP 正在大量浏览特定的产品页面。 ## 5. 使用 `| timechart` 进行时间分析 要了解该 IP **何时** 处于活跃状态,我们使用 `| timechart` 逐日可视化其活动变化: ``` index=main sourcetype="access_combined_wcookie" clientip=87.194.216.51 | timechart span=1d count by status ``` **此命令的作用:** - `timechart` — 生成时间可视化图表(X 轴**始终**是时间) - `span=1d` — 按天对事件进行分组 - `count by status` — 按状态码创建时间序列 [![Timechart — 7 天内的全局活动](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/59cbc2c5c9033541.png)](4.png) **观察到的 HTTP 状态码回顾:** | 状态码 | 含义 | 观察结果 | |--------|--------------|-------------| | 200 | OK — 成功访问 | 主导活动 — 正常浏览 | | 400 | Bad Request — 错误请求 | 使用错误参数进行的尝试 | | 403 | Forbidden — 禁止访问 | 尝试访问受保护的资源 | | 404 | Not Found — 页面不存在 | 未找到的敏感文件 | | 406 | Not Acceptable | 包含错误请求头的请求 | | 408 | Request Timeout | 放弃的连接 | | 500 | Internal Server Error | 服务器端错误 | | 503 | Service Unavailable | 服务器暂时不可用 | | 505 | HTTP Version Not Supported | 使用错误 HTTP 版本的请求 | **图表揭示的信息:** | 观察结果 | 解释 | |------------|---------------| | 5 月 5 日至 12 日的活动 | 连续 7 天无间断 | | 5 月 8 日星期五达到峰值(约 340 个事件) | 最活跃的一天 | | 周末仍有活动 | 对于合法用户属于异常行为 | | 状态码 200 占主导地位 | 正常活动掩盖了侦察行为 | ## 6. 按状态码详细视图 通过启用 **Trellis** 模式,我们可以在同一时间段内获得每个状态码的对比视图: [![按状态码详细视图 — Trellis](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/01ec58d493033542.png)](6.png) **此视图提供的信息:** | 状态码 | 含义 | 观察结果 | |--------|--------------|-------------| | 200 | 成功访问 | 每天 74 到 344 个事件 — 主导活动 | | 404 | 页面未找到 | 针对 `/passwords.pdf` 和 `/hidden/` 的尝试 | | 400 | 错误请求 | 持续存在,每天 2 到 4 次 | | 500 | 服务器错误 | 在 5 月 11 日星期一达到峰值 | | 503 | 服务不可用 | 定期出现,每天 2 到 14 次 | ## 7. 总结 | 指标 | 结论 | |-----------|---------| | 894 次成功访问(状态码 200) | ✅ 积极且合法地使用网站 | | 已完成购买 (`/cart/success.do`) | ✅ 实际交易已成功完成 | | 针对 `/passwords.pdf` 的尝试 (x3) | ❌ 重复瞄准敏感文件 | | 7/7 天无间断活动 | ⚠️ 异常行为 | | 404 峰值与 200 不重合 | ⚠️ 隐藏在正常流量中的侦察行为 | 该 IP 一方面像普通客户一样使用网站,另一方面又在暗中探测敏感文件。这是一个典型的**试图混入合法流量**以避免被检测到的攻击者特征。 SOC 无法确定该 IP 背后的真实身份。目前保留两种假设,并已提交以进行升级处理: - 一个被用作外部攻击者掩护的**被盗账户** - 一个**内部人员**滥用其合法访问权限以搜索敏感数据 ## 8. SOC 运营响应 ### 🚧 立即遏制 - 在防火墙层面封锁 IP `87.194.216.51` - 在调查期间,暂停与此 IP 会话相关联的账户 ### 🔔 检测 - 针对任何尝试访问 `/passwords.pdf` 的行为创建告警 - 针对任何在敏感文件上产生超过 5 次 404 错误**并且**有成功购买记录的 IP 创建告警 - 监控周末期间 7x24 小时不间断活动的 IP ### 🔍 补充调查 - 识别与此 IP 会话相关联的用户账户 - 检查其他 IP 是否表现出相同的行为模式 - 分析购买数据以检测潜在的欺诈行为 ## 📁 复现此分析 使用的数据集是 Splunk 官方的 `tutorialdata.zip`,可在此处免费获取: [下载 tutorialdata.zip](https://docs.splunk.com/images/Tutorial/tutorialdata.zip) *© Paulcyber06 — 保留所有权利。*
标签:Buttercup Games, CISA项目, HTTP状态码分析, IP分析, SPL查询, Web安全, 安全事件响应, 安全运营中心, 恶意IP, 插件系统, 数字取证, 网络安全, 网络映射, 自动化脚本, 蓝队分析, 隐私保护