01 认识与流程:先搞懂你面对的是什么

本章目录
  1. 抓包文件是什么
  2. 流量分析在 CTF 里的定位
  3. 工具选择:图形 Wireshark vs 命令行 tshark
  4. 通用解题五步法(详解)
  5. 第一步其实是:看懂题目在问你什么
  6. 什么时候才需要写脚本

抓包文件(pcap / pcapng)是什么

网络通信是一个个小小的"数据包"在传输。抓包工具把某个网卡上流过的包按时间顺序原样记录下来,存成一个文件,这就是抓包文件。

一句话理解:抓包文件就像一段"被录下来的网络监视录像",里面是攻击者/受害者的完整通讯过程。你的任务是从录像里把作案细节揪出来。

流量分析在 CTF 里的定位

CTF 题目类型很多:Web、杂项(Misc)、密码(Crypto)、逆向(Reverse)、Pwn……。流量分析通常归在 杂项(Misc) 或单独的 取证/流量分析 分类,常和 Web 攻击结合(SQL注入、越权、命令执行都是流量分析题的热门素材)。

它考的不是"会不会某个漏洞",而是 "拿到别人的攻击记录后,你能不能读懂它"。很多题里的攻击手法你并不需要复现,只需要会"看"。所以它相对友好,也特别适合新手入门取证。

工具选择:Wireshark 图形 vs tshark 命令行

Wireshark(图形界面)tshark(命令行,装 Wireshark 自带)
适合人肉看图、点开看细节、新手入门批量过滤、导出对象、接脚本自动化
优点直观、有面板/右键/可视化解码可 grep、可管道、一条命令出结果
缺点数据多时艰难、不好批处理学习成本、看不到图形化结构
典型场景定位一条可疑请求、Follow 看完整流把 HTTP 响应全部导出成文件再算哈希

实战用法是两者结合:先在图形里看懂思路,再把重复劳动丢给命令行/脚本。本栏目 07 脚本与命令 专门讲 tshark。

通用解题五步法(详解)

任何流量题都能套。每步的"目的"和"典型动作"如下:

① 观 —— 先建立整体地图

目的:知道这是"哪类流量",值不值得解,重点是明文还是加密。

动作:菜单 统计 → 协议分级(Protocol Hierarchy),一眼看到各种协议占比;同时看总帧数、时间范围。

如果大部分是 TLS(即 HTTPS 加密),直接读文本是读不到的,可能要解密(见 05 协议),也会费劲很多。

② 滤 —— 把噪音剥掉

目的:总包可能成百上千,其中绝大多数是无关的心跳、握手、其他服务。把焦点收敛到可疑内容。

动作:用显示过滤器,例如 http、http.request、http.request.uri contains "xxx"。详见 03 过滤器。

③ 定位 —— 找到信息真正待的地方

目的:同一个攻击会在"请求"和"响应"两端都有信息,你要知道答案在哪个方向。

动作:看请求的 URL/参数(攻击者问了什么),再看响应体/JSON(服务器回答了什么),必要时看时间延迟(盲注题)。详见 04 定位术。

④ 解码 —— 把编码还原成可读内容

目的:网络里大量信息是编码过的(URL编码%XX、Base64、十六进制、UTF-8汉字)。不还原就看不懂。

动作:识别编码类型 → 用工具/命令还原。典型:URL解码、Base64解、Hex转文本。详见 07 的编码识别与 08 的避坑。

⑤ 还原验算 —— 按题目规则组装答案

目的:这一步才产生 Flag。可能要做排序、拼接、算 MD5/SHA、逐字符还原。

动作:严格按题目指令做,并验算:数量对不对?总长度对不对?(例如 10000×18=180000;28个字符才是flag)。详见 06 与 08。

关键认知:五步不是机械顺序,很多题"观/滤/定位"循环往复。但无论怎么绕,最后一定落到"把某些信息按规则组装成唯一答案"。

第一步其实是:看懂题目在问你什么

很多人一上来就开抓包,结果漫无目的。正确做法是先拆题目指令。题目通常会告诉你三件事:

1️⃣ 找什么字段 —— 例如"所有泄漏的身份证号" → 去流量里找 idcard 字段。

2️⃣ 怎么组合 —— 例如"按被窃取时间排序后拼接" → 答案的组装规则。

3️⃣ 最终形式 —— 例如"计算 MD5 后套上 flag{} "" → 输出的格式。

把这三点写在草稿上,你后面每一步都知道"我要去流量里找什么、找到后干什么"。这比 tools 更重要。

✏️ 练习:下面这道题,请先说出"找什么 / 怎么组合 / 最终形式"三要素,再选对应判断。

题目:"攻击者通过 SQL 时间盲注逐个爆破表明 flag 列的数据。请还原 flag。响应延迟 5 秒表示条件为真,1 秒表示为假。"

什么时候才需要写脚本

新手常被"写脚本"劝退。但其实:

脚本永远是最后的手段,理解才是第一步。需要模板时看 07。