读取协议
分析 TCP、HTTP、DNS
读取协议 是 CoddyKit 上的免费 Cyber Security Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cyber Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cyber Security Academy 课程共包含 4 节课。
逐层理解协议
网络流量按照层组织。每个数据包都会将高层协议封装在低层协议中,就像一个信封套着另一个信封。
读取流量意味着按照正确的顺序剥开这些层。
Ethernet -> IP -> TCP -> HTTP
(frame) (pkt) (seg) (data)TCP 握手
TCP 连接以三次握手开始:SYN、SYN-ACK、ACK。看到这一过程,就能确认已建立真实连接。
只有 SYN 而没有 SYN-ACK 响应,通常意味着端口已关闭或数据包被防火墙丢弃。
Client -> SYN
Server -> SYN, ACK
Client -> ACK (connection up)TCP 标志与状态
TCP 的标志可以揭示连接状态。请学习常见标志,以便跟踪一次通信。
- SYN:开始。
- ACK:确认。
- FIN:正常关闭。
- RST:突然重置。
跟踪数据流
Wireshark 可以跟踪 TCP 数据流,将一次通信重新组装为可读文本,而不是分散的数据包。
右键点击数据包并选择“跟踪”,即可同时查看完整的请求与响应。
Right-click -> Follow -> TCP Stream读取超文本传输协议
超文本传输协议流量是明文(未加密时)。您可以直接读取方法、路径、标头和正文。
这使未加密的超文本传输协议成为丰富的分析来源,同时也给网络所有者带来风险。
GET /admin HTTP/1.1
Host: intranet.local
Cookie: session=abc123
HTTP/1.1 200 OK安全超文本传输协议与 TLS
安全超文本传输协议会将超文本传输协议封装在 TLS 中,因此有效载荷经过加密。您仍然可以看到 TLS 握手、SNI 主机名和证书。
没有密钥时,您无法读取正文,但元数据仍然能够讲述一些情况。
TLS Client Hello
server_name: bank.example.com (SNI)
TLS Server Hello + Certificate读取 DNS
DNS 查询会揭示某台主机试图访问哪些域名,而且通常发生在建立任何连接之前。
查询及其响应会显示请求的名称和解析出的地址。
DNS query: A cdn.example.com
DNS response: cdn.example.com -> 93.184.x.xDNS 作为指标
DNS 是分析人员的宝库。查询已知恶意域名、包含长随机子域名,或查询量异常高,都可能表明存在可疑行为。
在寻找异常时,我们会大量使用这一方法。
UDP 与 ICMP
并非所有通信都使用 TCP。UDP 是无连接协议(DNS、DHCP、QUIC 都会使用),而 ICMP 负责传输控制消息,例如 ping 和不可达错误。
异常的 ICMP 流量可能表明存在扫描或隧道传输。
使用统计菜单
Wireshark 的统计菜单会概括捕获结果,包括协议层次结构、通信会话和端点。
请从这里开始分析,以了解哪些协议占主导地位,以及哪些主机通信最频繁。
Statistics -> Protocol Hierarchy
Statistics -> Conversations
Statistics -> Endpoints建立思维模型
优秀的分析人员会建立网络正常状态的整体图景。了解正常状态后,异常就会格外明显。
熟练读取协议是后续所有工作的基础。
快速检查
测试您对协议读取的理解。
回顾
您学习了如何读取网络协议。
- 流量是分层的:以太网、IP、TCP/UDP、应用层。
- TCP 以 SYN、SYN-ACK、ACK 开始;标志可以揭示状态。
- “跟踪 TCP 数据流”会重新组装通信内容。
- 超文本传输协议内容可读;安全超文本传输协议只会暴露 TLS 元数据和 SNI。
- DNS 会揭示通信目的地;请使用统计功能来了解正常状态。
接下来,您将检测异常和恶意流量。
常见问题解答
「读取协议」课时是免费的吗?
是的 — 「读取协议」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cyber Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cyber Security Academy 课程共包含 4 节课。
「读取协议」这节课中我会学到什么?
分析 TCP、HTTP、DNS 你通过在浏览器中直接运行的动手代码来练习 Cyber Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cyber Security Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cyber Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「读取协议」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cyber Security Academy 课中编写并运行代码吗?
能。每节 Cyber Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。