0Pricing
Cyber Security Academy · 课时

使用 PCAP 进行网络取证

从流量中重建攻击过程。

使用 PCAP 进行网络取证 是 CoddyKit 上的免费 Cyber Security Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cyber Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cyber Security Academy 课程共包含 4 节课。

网络取证捕获的内容

网络取证会分析捕获的流量,以还原网络传输中发生的情况:连接、传输的文件、命令与控制活动以及数据外泄。

与磁盘取证不同,网络证据具有易失性。如果事件发生期间没有进行捕获,数据包就会消失。因此,组织需要提前部署全数据包捕获和流量日志记录。

PCAP 和捕获工具

PCAP(数据包捕获)格式会存储带时间戳的原始帧。tcpdump 和 tshark 可以从网络分接器或 SPAN 端口捕获流量。

请按照取证要求进行捕获:写入文件,不要在实时过程中解析名称(DNS 查询会增加噪声),并记录所使用的捕获过滤器。

# Capture all traffic on eth0 to a rotating set of files
tcpdump -i eth0 -n -s 0 -w capture-%Y%m%d-%H%M%S.pcap -G 3600

# -n  no name resolution
# -s 0 full packet (snaplen)
# -G 3600 rotate hourly

全数据包与流数据

两种证据层级:

  • 全数据包捕获(PCAP):包含每个字节,可以重建内容,但占用大量存储空间
  • 流数据(NetFlow/IPFIX):仅包含元数据,即谁与谁通信、何时通信以及通信量,但不包含载荷

流记录适合低成本长期保留,也非常适合发现信标通信和外泄流量规模;随后可以转到 PCAP 进行详细分析。

Wireshark 显示过滤器

Wireshark(以及 tshark)使用显示过滤器来隔离相关流量。掌握几个常用过滤器后,分析速度会显著提升。

# Traffic to/from a suspect host
ip.addr == 10.0.0.66

# DNS queries only
dns.flags.response == 0

# HTTP requests
http.request

# TCP retransmissions (possible tampering or instability)
tcp.analysis.retransmission

跟踪数据流

TCP 重组会将数据包重新拼接成原始通信。Wireshark 中的跟踪 TCP 流(或 tshark -z follow)可以重建 HTTP 交换、聊天会话或传输的文件。

当流量未加密时,这能揭示明文凭据、外泄的文档以及攻击者命令。

# Reconstruct TCP stream index 5 as raw bytes
tshark -r capture.pcap -z follow,tcp,raw,5 -q

提取传输的文件

通过 HTTP、FTP 或 SMB 传输的文件可以从捕获内容中雕刻出来。Wireshark 可以导出对象,tcpflow 或 foremost 可以重建载荷。

请对提取出的文件计算哈希,并与威胁情报集合进行比对,以识别恶意软件投递。

# Reassemble flows into per-connection files
tcpflow -r capture.pcap -o extracted/

# Export HTTP objects via tshark
tshark -r capture.pcap --export-objects http,http_objects/

DNS 作为指标

即使载荷已加密,DNS 仍然能够揭示大量信息:

  • DGA 域名:看起来随机的长名称可能表明存在恶意软件
  • NXDOMAIN 比例较高:表明正在尝试生成域名
  • DNS 隧道:通过超大或高频的 TXT/NULL 查询传输数据

建立正常 DNS 基线后,异常情况就会更加明显。

# Count queries per domain to spot beaconing or tunneling
tshark -r capture.pcap -Y dns.flags.response==0 \
  -T fields -e dns.qry.name | sort | uniq -c | sort -rn | head

检测信标通信

命令与控制通道通常会以固定间隔向控制器发送信标。从取证角度看,您应当查找:

  • 定期连接到同一目标
  • 较小且一致的载荷大小
  • 长期持续的会话或固定的抖动

流量分析(连接时间)通常比数据包检查更快发现信标通信。

加密流量分析

大多数现代流量都经过 TLS 加密,因此载荷无法直接读取。您应当改为分析元数据:

  • SNI 和证书字段(可见时)
  • TLS 握手的 JA3/JA3S 指纹,用于识别客户端工具
  • 数据包大小和时间信息

如果捕获了 TLS 密钥(实验室中使用 SSLKEYLOGFILE),Wireshark 就可以解密流量,但这在真实证据中很少见。

# Extract TLS server names (SNI) from a capture
tshark -r capture.pcap -Y 'tls.handshake.type==1' \
  -T fields -e tls.handshake.extensions_server_name | sort -u

与日志关联

网络证据与主机日志和基础设施日志关联后最具说服力,包括防火墙拒绝记录、代理日志、IDS 警报(Suricata/Zeek)以及终端遥测数据。

Zeek 会将原始 PCAP 转换为结构化日志(conn.log、dns.log、http.log、files.log),比单独查看数据包更容易进行关联分析。

# Generate Zeek logs from a capture
zeek -r capture.pcap

# Inspect connection summary
cat conn.log | zeek-cut id.orig_h id.resp_h proto duration orig_bytes resp_bytes

捕获完整性和存储

PCAP 同样属于证据,因此应当像处理磁盘镜像一样严格:采集时计算哈希,以只读方式存储,并记录捕获点、接口和时钟源。

  • 注明网络分接器是否看到了双向流量
  • 记录丢弃数据包的数量(存在缺口会削弱结论)
  • 保留原始捕获内容,在副本上进行分析
# Hash the capture and report stats including drops
sha256sum capture.pcap
capinfos capture.pcap | grep -E 'packets|drop|duration'

快速检查

请检验您对网络取证的掌握程度。

回顾

您已经学习了如何从流量中重建攻击过程:

  • PCAP 可以捕获所有内容;流数据适合扩展到长期元数据保留
  • 显示过滤器和数据流跟踪可以隔离并重组通信
  • 对象提取可以恢复传输的文件
  • DNS 分析和信标检测可以发现命令与控制活动和隧道
  • 通过元数据和 JA3判断加密流量
  • Zeek与日志关联分析可以将各类证据串联起来

接下来:将磁盘和网络工件编织进时间线和报告。

常见问题解答

「使用 PCAP 进行网络取证」课时是免费的吗?

是的 — 「使用 PCAP 进行网络取证」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cyber Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cyber Security Academy 课程共包含 4 节课。

「使用 PCAP 进行网络取证」这节课中我会学到什么?

从流量中重建攻击过程。 你通过在浏览器中直接运行的动手代码来练习 Cyber Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cyber Security Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Cyber Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「使用 PCAP 进行网络取证」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Cyber Security Academy 课中编写并运行代码吗?

能。每节 Cyber Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 取证基础与证据保管链
  2. 磁盘成像与文件系统分析
  3. 使用 PCAP 进行网络取证
  4. 时间线分析与报告
← 返回 Cyber Security Academy