一、抓包核心概念

  • 目标:捕获网络流量,分析HTTP/HTTPS及其他协议数据(如TCP/UDP)。
  • 适用场景:Web、App、小程序、PC应用的协议分析、漏洞测试、数据监听。

二、主流抓包工具对比

工具 平台 特点 典型场景
Burp Suite Windows/macOS/Linux 渗透测试首选,支持HTTP/HTTPS拦截、改包、插件扩展 Web漏洞测试、App接口分析
Fiddler Windows 界面友好,适合HTTP/HTTPS调试 浏览器/Windows应用抓包
Charles macOS/Windows 跨平台,支持移动端抓包(iOS/Android) 移动端App/小程序抓包
Proxifier Windows 代理转发工具,支持非HTTP协议抓包 PC应用无内置代理时的转发
Wireshark 全平台 底层协议分析(如TCP/UDP/IP),需语法筛选 游戏封包、自定义协议分析
科莱分析 Windows 图形化界面,支持应用/进程/IP筛选 新手入门、网络流量统计

三、HTTP/HTTPS抓包关键操作

1. 通用步骤

  1. 配置代理
    • 工具启动后生成代理地址(如 127.0.0.1:8080)。
    • 目标设备/应用设置代理指向该地址。
  2. 安装证书(HTTPS抓包必需):
    • 工具官网下载证书(如Burp的 cacert.der),安装到系统或浏览器信任列表。
    • 移动端需在设置中手动信任证书(如Android的“安全”→“加密与凭据”)。

2. 分场景操作

场景 工具 关键配置
浏览器Web Burp/Fiddler/Charles 浏览器代理设置(Chrome/Firefox手动配置)
安卓应用 Charles/Burp 模拟器/真机设置WLAN代理→安装证书→信任证书
PC微信小程序 Charles+Burp/Proxifier+Burp 系统全局代理→工具联动转发(需关闭微信自动代理)
无代理PC应用 Proxifier+Burp Proxifier设置代理规则→指定进程走Burp代理

四、非HTTP协议抓包

  • 游戏/自定义协议
    • 工具:Wireshark(需懂协议语法,如过滤 tcp port 8080)、科莱分析(图形化筛选进程/IP)。
    • 场景:抓取游戏封包(如通信地址、数据格式),测试协议漏洞(如重放攻击)。
  • 操作要点
    • 直接监听网卡流量,无需代理(Wireshark选择对应网络接口)。
    • 分析原始数据包(如TCP标志位、UDP payload),需结合协议文档。

五、常见问题与防护检测

1. 抓不到包的原因

  • 代理未配置:目标应用未指向工具代理地址。
  • 证书问题:HTTPS抓包未安装或不信任证书,导致连接失败。
  • 应用防护
    • 检测代理环境(如部分银行App检测到代理直接崩溃)。
    • 双向认证(客户端证书校验,需导入工具证书到应用信任列表)。

2. 防护绕过思路

  • 证书伪装:将工具证书伪装成系统根证书(需获取设备Root/越狱权限)。
  • 流量转发:通过Proxifier等工具将非代理应用的流量强制转发到抓包工具。
  • 协议混淆:部分应用使用自定义加密协议(如WebSocket+AES),需先逆向分析密钥。

六、工具联动配置示例(以Burp为例)

1. Proxifier + Burp 抓包无代理PC应用

  1. 启动Burp,监听本地端口(如 127.0.0.1:8080)。
  2. 打开Proxifier,添加代理服务器 127.0.0.1:8080
  3. 创建规则:指定目标进程(如 wechat.exe)→ 应用代理服务器 → 保存生效。

2. Charles + Burp 抓包小程序

  1. Charles启动代理(如 127.0.0.1:8888),配置Burp作为上游代理(Proxy → Proxy Listeners → 监听 127.0.0.1:8080)。
  2. 系统全局代理设为Charles地址,Burp通过Charles获取流量并处理。