Samir-K9/Splunk-Capstone-Report
GitHub: Samir-K9/Splunk-Capstone-Report
一份使用 Splunk SIEM 进行完整事件调查的 SOC 实战报告,展示了从密码喷洒攻击到 C2 持久化建立的完整攻击链分析与报告撰写方法。
Stars: 0 | Forks: 0
# Splunk-Capstone-报告
## 场景:
Ryan Adams 是一家小型牙科诊所的本地管理员,在怀疑自己的计算机可能遭到入侵后,联系了 MahCyberDefense SOC 热线。他解释说,在 UTC 时间 2025 年 10 月 15 日 13:00 左右,他的鼠标在随机移动,因此产生了怀疑。
作为 SOC 分析师,您的任务是使用 Splunk 调查此事件。分析可用数据以确定发生了什么,识别任何失陷指标,并使用社区中提供的格式将您的发现记录在 SOC 报告中。
## 发现:
- 时间:2025-10-25 12:51:44 UTC
- 主机:FRONTDESK-PC1
- 主机 IP:172.16.0.110
- 用户:Ryan.Adams
- IOC IP:172.16.0.184
- IOC C2 IP:157.245.46.190 (域:digitalocean.com, 国家:英国, 在 AbuseIPDB 上被报告 107 次, Silver C2 标签)
- 文件名:python.exe
- SHA256 哈希: CFFAB896E9F0B12101034D9CED76332EF5AA4036AFA08E940E825E277C21A044
## 调查摘要
UTC 时间 2025-10-25 12:51:44,一系列身份验证尝试针对工作站 `FRONTDESK-PC1` 上的多个账户。
这些尝试来自 `DESKTOP-924H12` 的 IP 地址 `172.16.0.184`。
被针对的账户包括 `administrator`、`guest`、`andrew.henderson` 和 `ryan.adams`。
由于针对了不同的账户,这表明攻击者正在尝试密码喷洒攻击。
攻击者使用 `Ryan.Adams` 的凭据成功登录。
经进一步调查,确认没有其他账户遭到入侵。
获得访问权限后,攻击者的下一步行动是禁用 Windows Defender 防病毒软件并关闭 Windows Defender 通知。
一个名为 `python.exe` 的可执行文件被下载并保存到目录 `C:\Users\Ryan.Adams\Music\`。
该文件随后被执行,向 `157.245.46.190:8888` 发起了出站 TCP 连接,这表明建立了命令与控制 (C2) 连接。
该进程还向 `172.16.0.7` 的端口 135 和 49669 发起了内部 IP 连接。然而,未发现入侵证据。
接下来,Powershell 被执行以创建计划任务,以便在每次启动时运行 `python.exe`,并在 `Ryan.Adams` 每次打开 Powershell 时执行 `python.exe`。
该账户于 UTC 时间 13:06:40 注销。
# 谁、什么、何时、何地、为什么、如何
## 谁
- 用户:Ryan.Adams
## 什么
初始攻击以密码喷洒尝试开始。
在入侵 `Ryan.Adams` 账户后,Windows Defender 被禁用,通知被关闭。
一个名为 `python.exe` 的可执行文件被下载,并在被入侵的会话中执行。该进程向外部 IP 发起了出站连接,这表明是一个命令与控制连接。
接下来,Powershell 被执行,以便在每次系统启动时以及 `Ryan.Adams` 每次打开 Powershell 时运行此恶意可执行文件 `python.exe`,从而建立持久性。
## 何时 (2025/10/25)
- 初始密码尝试:12:51:44 UTC
- 成功入侵:12:52:12 UTC
- Defender 被禁用:12:55:50 UTC
- Defender 通知关闭:12:56:28 UTC
- 恶意可执行文件下载:12:59:26 UTC
- Payload 执行:13:00:33 UTC
- 出站连接:13:00:34 UTC
- Powershell 执行:13:04:59 13:05:06 UTC
- 会话注销:13:06:40 UTC
何地
- 主机:FRONTDESK-PC1
- 主机 IP:172.16.0.110
为什么
攻击者的明确动机尚不清楚,因为证据仅表明建立了持久性。
然而,很明显攻击者希望即使在系统重启后也能在系统上停留更长时间,这表明这是一种战略性的系统访问,而不是一次性活动。
可能的目标可能是逐渐窃取敏感数据、横向移动到其他机器,甚至逐渐提升权限。
如何
- 攻击者进行了多次登录尝试以发起入侵。
- 成功入侵用户账户 `Ryan.Adams`。
- 禁用 Windows Defender 并关闭通知,以躲避安全监控的检测。
- 通过对 `157.245.46.190` 端口 `9999` 的 HTTP 请求下载了一个恶意可执行文件。
- Payload 被执行,触发了到 `157.245.46.190` 端口 `8888` 的出站 TCP 连接。
- 创建了一个名为 `PythonUpdate` 的计划任务,以便在每次系统启动时启动 `python.exe`。
- 执行了一个 Powershell 进程,在用户的 PowerShell 文件夹中创建 `StartupProfileData-Interactive`。
- 攻击者在建立持久性后从会话中注销。
## 建议
- 为 `Ryan.Adams` 启动密码重置并启用多因素认证。审查其他系统和用户的可疑登录行为,并强制执行严格的密码策略。
- 将 `FRONTDESK-PC1` 从网络中隔离,以防止向其他机器进行任何横向移动。终止任何可疑进程,并删除任何可疑的计划任务和启动项。通过完全格式化磁盘执行全新的 Windows 安装可能是清除任何隐藏恶意软件和持久性机制的最安全方法。但是,请先备份重要文件并对其进行恶意软件扫描。
- 在网络中阻止 IP `157.245.46.190` 的任何入站和出站连接。
- 限制管理权限,以阻止对 Defender 安全设置进行任何未经授权的更改。对 Defender 配置设置的任何更改都应立即在 SIEM 中触发警报。
- 增强 IDS 检测能力,通过集成基于异常/行为的规则,来警报任何可疑的出站连接和恶意软件下载行为。
- 对主机 `DESKTOP-924H12`(IP `172.16.0.184`)展开调查,以确定攻击是如何从内部主机发起的。
# 证据
## 1. 密码喷洒攻击
从 IP `172.16.0.184` 开始,于 12:51:44 UTC 进行了多次失败的身份验证尝试。

针对各种账户共进行了 157 次登录尝试。

## 2. 成功登录
用户于 12:52:12 UTC 使用 `ryan.adams` 账户成功通过身份验证。没有记录到其他账户的成功身份验证。日志显示来自 IP 为 `172.16.0.184` 的 `DESKTOP-924H12` 的网络登录。然而,需要注意的是,主要的活动会话始于 12:55:17 UTC 的登录。

## 3. Defender 被禁用
Windows Defender 防病毒软件实时保护扫描于 12:55:50 UTC 被禁用,配置设置于 12:56:28 UTC 被更改以逃避检测。

## 4. 恶意可执行文件已下载
12:55:55 UTC,Ryan.Adams 从 Windows 资源管理器启动了 Chrome。

12:57:00 UTC,Chrome 进程 `chrome.exe` 在用户可写目录 `C:\Users\Ryan.Adams\Music\` 中创建了文件 `python.exe`,确认了潜在恶意可执行文件已下载到系统。

## 5. Payload 已执行
13:00:33 UTC,恶意可执行文件 `python.exe` 通过 Windows 资源管理器从用户的 Music 目录启动,确认 Payload 已成功执行。

## 6. 出站通信已发起
执行后,`python.exe` 立即于 13:00:34 UTC 向端口 8888 上的外部 C2 服务器发起了出站通信,并于 13:00:34 UTC 和 13:00:35 UTC 尝试向 `172.16.0.7` 的端口 `135` 和端口 `49669` 发起内部 RPC 连接,这表明存在活跃的命令与控制活动和可能的横向移动。

日志分析仅识别出从被入侵主机到 `172.16.0.7` 的出站网络连接事件,而在目标系统上没有相应的身份验证或执行活动,这表明横向移动尝试但未成功。

## 7. Powershell 已启动
在 13:00:44 UTC 到 13:04:08 UTC 之间,powershell.exe 通过 Windows 资源管理器启动了三次。其中两次启动包含将工作目录更改为 C:\Users\Ryan.Adams\Music 的命令,而另一次是标准的 PowerShell 启动。所有三个事件似乎是用户发起的活动。

## 8. 持久性已达成
13:04:59 UTC,`schtasks.exe` 通过 PowerShell 执行,以创建名为 `PythonUpdate` 的计划任务,该任务在 `SYSTEM` 账户下于每次系统启动时运行 `C:\Users\Ryan.Adams\Music\python.exe`。这代表了攻击者达成了持久性。

## 9. 用户级 Powershell 持久性
13:05:06,执行了一个 Powershell 进程,在用户的 PowerShell 文件夹中创建 `StartupProfileData-Interactive`。我们可以推测,每当 Ryan.Adams 打开 PowerShell 时它就会运行 `python.exe`,确保攻击者可以在计划任务被删除或禁用的情况下重新获得执行权限。

## 10. 账户已注销
13:06:40,攻击者从机器注销后,会话结束。

标签:AMSI绕过, ATT&CK框架, BurpSuite集成, C2通信, Conpot, HTTP/HTTPS抓包, IP 地址批量处理, OPA, PE 加载器, PoC, SOC分析, Windows安全, 代码示例, 企业安全, 僵尸网络, 凭据访问, 勒索软件, 协议分析, 威胁情报, 威胁检测, 安全运营, 实验报告, 密码喷射, 库, 应急响应, 开发者工具, 态势感知, 恶意软件, 扫描框架, 数字取证, 数据分析, 暴力破解, 木马, 木马检测, 权限提升, 案例研究, 横向移动, 漏洞分析, 私有化部署, 编程规范, 网络信息收集, 网络安全, 网络资产管理, 自动化脚本, 调查报告, 路径探测, 防御规避, 防火墙, 隐私保护, 靶场