JFrancisSOC/Case-File-01-Investigating-Network-Traffic-with-WireShark

GitHub: JFrancisSOC/Case-File-01-Investigating-Network-Traffic-with-WireShark

一份基于 Wireshark 的家庭实验室网络流量调查实战案例,演示了 SOC 分析师从捕获数据包到撰写调查报告的完整流程。

Stars: 0 | Forks: 0

# 案件档案 01:网络流量调查 ## 案件概述 | 案件详情 | 信息 | |---|---| | 案件 ID | CF-01 | | 调查类型 | 网络流量审查 | | 分析师 | Jamaal Francis | | 告警来源 | 无告警 — 家庭实验室调查 | | 严重程度 | 信息 | | 状态 | 已关闭 | | 操作系统 | Windows 11 | | 分析工具 | Wireshark 4.6.7 | | 捕获接口 | Wi-Fi | | 本地 IP 地址 | `192.168.1.155` | | 路由器/DNS 服务器 | `192.168.1.1` | | 最终结论 | 正常网络活动 | ## 案件总结 我使用 Wireshark 完成了一次实时网络流量调查。此案件并非由安全告警引起。我进行此次调查是为了练习 SOC 分析师如何捕获流量、审查数据包、过滤协议以及记录发现。 我捕获了 Wi-Fi 连接的流量,并审查了 IP 地址、域名、端口、协议、TCP 标志和数据包详情。我还追踪了一个 TCP stream,以检查我的计算机与外部服务器之间的通信。 ## 调查目标 我的目标是: - 识别活动的网络接口。 - 捕获实时网络流量。 - 识别我计算机的本地 IP 地址。 - 审查源 IP 地址和目标 IP 地址。 - 识别正在使用的协议。 - 过滤 DNS 和 TCP 流量。 - 检查 DNS 请求。 - 审查 TCP 端口、标志和 header 信息。 - 追踪一个 TCP 对话。 - 确定审查的流量是正常还是可疑的。 ## 收集的证据 调查期间捕获了以下证据: 1. Wireshark 网络接口 2. 实时数据包捕获 3. 捕获的流量及识别出的协议 4. 过滤出的 DNS 流量 5. TCP 数据包详情 6. TCP header 详情 7. 追踪 TCP Stream 对话 ## 网络指标 ### 内部网络信息 | 指标 | 值 | 用途 | |---|---|---| | 本地 IP 地址 | `192.168.1.155` | 正在调查的计算机 | | 路由器/DNS 服务器 | `192.168.1.1` | 用于处理 DNS 请求的本地路由器 | | DNS 端口 | `53` | 域名请求 | | HTTP 端口 | `80` | 未加密的 Web 通信 | | HTTPS 端口 | `443` | 加密的 Web 通信 | ### 观察到的外部 IP 地址 - `20.59.128.9` - `72.154.7.114` - `172.183.7.192` - `20.184.175.19` - `20.184.175.23` - `13.89.179.15` ### 观察到的域名和主机名 - `history.google.com` - `settings-win.data.microsoft.com` - `v10.events.data.microsoft.com` - `img-s-msn-com.akamaized.net` ### 观察到的协议 - DNS - UDP - TCP - HTTP - TLS 1.2 - QUIC - IPv4 - IPv6 # 调查时间线 ## 步骤 1 — 识别活动的网络接口 我打开了 Wireshark 并审查了可用的网络接口。该列表包括 Wi-Fi、Ethernet、loopback 流量、Bluetooth 以及多个本地网络连接。 我选择了 Wi-Fi 接口,因为活动图表显示它正在积极发送和接收网络流量。 ### 证据 01 — Wireshark 接口 ![01 Wireshark Interfaces](https://static.pigsec.cn/wp-content/uploads/repos/cas/38/38e865f423a943c8526522e95c26e93c150e4cddc01017f5178092730468e94e.png) ## 步骤 2 — 开始实时数据包捕获 我在 Wi-Fi 接口上开始了实时捕获。Wireshark 开始显示进出我计算机的网络流量。 数据包列表显示了: - 数据包编号 - 时间戳 - 源地址 - 目标地址 - 协议 - 数据包长度 - 数据包信息 一个选定的数据包显示了从外部 IP 地址 `20.59.128.9` 发往我计算机 `192.168.1.155` 的 TCP 流量。 | 数据包详情 | 观察到的值 | |---|---| | 源 IP | `20.59.128.9` | | 目标 IP | `192.168.1.155` | | 协议 | TCP | | 源端口 | `80` | | 目标端口 | `62946` | | TCP 标志 | PSH, ACK | | 帧大小 | 2,778 字节 | | TCP payload | 2,712 字节 | 源端口是 `80`,通常用于 HTTP 流量。PSH 和 ACK 标志表明数据正通过已建立的连接发送,并且之前接收到的数据正在被确认。 ### 证据 02 — 实时数据包捕获 ![02 Live Packet Capture](https://static.pigsec.cn/wp-content/uploads/repos/cas/da/da17a6865a42d9a65e8d084267fd4d5dc62ca596cdba6676c0c858639f0a1d48.png) ## 步骤 3 — 识别网络协议 我审查了协议列,并识别出几种不同类型的网络流量。 这些协议包括: - DNS - TCP - HTTP - QUIC - UDP - IPv4 - IPv6 数据包捕获显示了涉及 `history.google.com` 的 DNS 请求。我还观察到我计算机 `192.168.1.155` 与外部 IP 地址 `20.59.128.9` 之间的 HTTP 通信。 一个选定的 DNS 数据包显示我的计算机正在向本地路由器发送请求。 | 数据包详情 | 观察到的值 | |---|---| | 源 IP | `192.168.1.155` | | 目标 IP | `192.168.1.1` | | 传输协议 | UDP | | 目标端口 | `53` | | 应用层协议 | DNS | ### 证据 03 — 捕获的网络流量及识别出的协议 ![03 Captured Network Traffic and ID Protocols](https://static.pigsec.cn/wp-content/uploads/repos/cas/e5/e5dc9edfb824d1e022cea794ac8773ef407d84917ca159a8361e6f83d01f213c.png) ## 步骤 4 — 过滤 DNS 流量 我输入了以下 Wireshark 显示过滤器: `dns` 此过滤器移除了无关的数据包,仅显示 DNS 流量。 我观察到位于 `192.168.1.155` 的计算机正在向位于 `192.168.1.1` 的路由器和 DNS 服务器发送 DNS 请求。 其中一个选定的请求是针对 `settings-win.data.microsoft.com` 的。 | DNS 详情 | 观察到的值 | |---|---| | 源 IP | `192.168.1.155` | | 目标 IP | `192.168.1.1` | | 源端口 | `49876` | | 目标端口 | `53` | | 请求的域名 | `settings-win.data.microsoft.com` | | DNS 记录类型 | A 和 AAAA | A 请求用于查找 IPv4 地址。AAAA 请求用于查找 IPv6 地址。 响应还显示了与 Microsoft 流量管理服务相关的 CNAME 信息。 ### 证据 04 — DNS 流量过滤器 ![04 DNS Traffic Filter](https://static.pigsec.cn/wp-content/uploads/repos/cas/f0/f0b657cc179dd22d83b86c19a473a2e81fa8631f4cf0b7c188ff182d0118b368.png) ## 步骤 5 — 分析 TCP 连接 我输入了以下显示过滤器: `tcp` 此过滤器使我能够专注于 TCP 流量。 我选择了数据包 `1203`,它显示了我的计算机试图与一台外部服务器启动 HTTPS 连接。 | TCP 详情 | 观察到的值 | |---|---| | 数据包编号 | `1203` | | 源 IP | `192.168.1.155` | | 目标 IP | `20.184.175.19` | | 源端口 | `61126` | | 目标端口 | `443` | | TCP 标志 | SYN | | 帧大小 | 66 字节 | SYN 标志表明我的计算机正在请求启动 TCP 连接。 随后的数据包包括 SYN-ACK 和 ACK 数据包。这展示了用于建立连接的 TCP 三次握手。 随后流量显示了针对 `v10.events.data.microsoft.com` 的 TLS 1.2 Client Hello。目标端口是 `443`,表明这是加密的 HTTPS 通信。 ### 证据 05 — TCP 数据包分析 ![05 TCP Packet Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/92/92d3436f77bb47778d59e5a5c0e2110c8988be0db8cba0e0cf8312234863d6ca.png) ## 步骤 6 — 检查 TCP Header 我选择了数据包 `358` 并展开了 Transmission Control Protocol 部分。 这使我能够审查存储在 TCP header 内部的信息。 | TCP Header 详情 | 观察到的值 | |---|---| | 数据包编号 | `358` | | 源 IP | `192.168.1.155` | | 目标 IP | `13.89.179.15` | | 源端口 | `60896` | | 目标端口 | `443` | | 序列号 | `10544` | | 确认号 | `4679` | | TCP 标志 | ACK | | TCP header 长度 | 20 字节 | | TCP 段长度 | 0 字节 | | Window 值 | `254` | | 计算出的 Window 大小 | `65024` | | Window 缩放因子 | `256` | | 对话状态 | 完成,包含数据 | ACK 标志表明我的计算机正在确认在已建立的 TCP 连接期间接收到的数据。 TCP 段长度为零,意味着选定的数据包正在确认流量,而没有携带额外的应用数据。 目标端口是 `443`,这表明该连接正在使用 HTTPS。周围的数据包还显示了涉及 `v10.events.data.microsoft.com` 的 TLS 1.2 通信。 ### 证据 06 — TCP Header 分析 ![06 TCP Header Analysis](https://static.pigsec.cn/wp-content/uploads/repos/cas/9a/9a77a2ba996ef85371f312778a8d220c4d71369d6db4cf2e136b5d30421d79a6.png) ## 步骤 7 — 追踪 TCP Stream 我使用 Wireshark 的 Follow TCP Stream 功能将一个 TCP 对话从其余捕获内容中分离出来。 | TCP Stream 详情 | 观察到的值 | |---|---| | Stream 编号 | `5` | | 客户端数据包 | `3` | | 服务器数据包 | `6` | | 通信轮次 | `3` | | 对话总大小 | 5,717 字节 | | 显示格式 | ASCII | | 可见主机名 | `img-s-msn-com.akamaized.net` | 大部分信息显得不可读,因为应用数据已被加密。 不同的颜色代表了客户端和服务器之间相反方向传输的流量。追踪这个 stream 帮助我专注于一个对话,而结果中不会出现无关的数据包。 ### 证据 07 — 追踪 TCP Stream 对话 ![07 Follow TCP Stream Conversation](https://static.pigsec.cn/wp-content/uploads/repos/cas/51/51408962070924e1242459cea178310395c14a791d6bd21a66e229cb79d8fe23.png) # 调查发现 在调查过程中,我确认了以下内容: 1. 我的计算机使用了本地 IPv4 地址 `192.168.1.155`。 2. 我的路由器和 DNS 服务器使用了 IP 地址 `192.168.1.1`。 3. DNS 请求通过 UDP 端口 `53` 发送。 4. 在 TCP 端口 `80` 上观察到了 HTTP 流量。 5. 在 TCP 端口 `443` 上观察到了 HTTPS 和 TLS 流量。 6. 存在涉及 Google 和 Microsoft 服务的 DNS 请求。 7. TCP 流量包括 SYN、SYN-ACK、ACK 和 PSH-ACK 数据包。 8. SYN、SYN-ACK 和 ACK 数据包展示了 TCP 三次握手。 9. 数据包捕获包括 DNS、UDP、TCP、HTTP、TLS 1.2、QUIC、IPv4 和 IPv6 流量。 10. TCP stream 包含加密的应用数据。 11. 在 TCP stream 内可以看到主机名 `img-s-msn-com.akamaized.net`。 12. 在我审查的数据包中,我没有发现明显的恶意网络活动迹象。 # 分析师评估 我审查的流量似乎与正常的 Web 浏览、Windows 服务、Microsoft 后台通信和其他常规网络活动一致。 外部 IP 地址通过常见的 Web 端口(例如 `80` 和 `443`)进行通信。DNS 请求连接到可识别的 Google、Microsoft 以及与 MSN 相关的服务。 加密的 TCP stream 是预期的,因为 HTTPS 流量可以保护应用数据不被作为纯文本读取。 我没有找到足够的证据将此流量归类为恶意流量。 # 已采取的行动 - 从 Wi-Fi 接口捕获实时流量。 - 保留了调查的截图。 - 识别了本地 IP 地址和 DNS 服务器。 - 记录了外部 IP 地址和域名。 - 使用 `dns` 过滤 DNS 流量。 - 使用 `tcp` 过滤 TCP 流量。 - 审查了 DNS 请求和响应。 - 检查了 TCP 标志和 header 值。 - 识别了 TCP 三次握手。 - 追踪并审查了一个 TCP stream。 - 记录了发现和最终结论。 由于未识别出恶意活动,因此无需采取遏制或修复措施。 # 最终结论 | 结案 | 结果 | |---|---| | 案件状态 | 已关闭 | | 严重程度 | 信息 | | 活动分类 | 正常网络活动 | | 是否识别出恶意活动 | 否 | | 是否需要遏制 | 否 | | 已审查的证据 | 七张截图 | | 分析师 | Jamaal Francis | 在审查了数据包捕获、记录了网络指标、分析了 DNS 和 TCP 流量并追踪了一个 TCP stream 之后,我完成了此次调查。 证据显示了正常的网络通信,未发现明显的恶意活动。案件档案 01 作为信息级别被关闭。
标签:TCP/IP, VX技术, Wireshark, 句柄查看, 安全演练, 安全运营中心(SOC), 底层编程, 网络协议分析, 网络流量分析