抓包工具篇
-
文章目录
文章内容主要包含抓包原理及常见抓包工具简介,如何选取符合自身日常工作要求的抓包软件。Charles、Fiddler、HttpAnalyzer、WireShark工具及Firefox浏览器,PC和移动端常用抓包和篡改请求操作讲解,各抓包软件在使用过程中实例操作和常见问题解答。
抓包工具的内容,主要分为以下四部分进行讲解:
1、工具选取:抓包原理,常见抓包工具简介,选取符合自身日常工作的抓包软件。
2、抓包使用:取部分的抓包工具进行常用操作讲解。
3、实例讲解:结合日常工作场景使用抓包软件实例操作。
4、常见问题:各抓包软件在使用过程中常见问题解答。
-
工具选取
1、HTTP请求
2、 抓包目的
有助于辅助测试,定位问题,了解数据传输、分析协议内容,实现代理。
3、常见抓包工具简介:
- Charles---基于java开发,支持跨平台:Mac、Linux、Window下都是可以使用.;
- Fiddler---主要调试和抓取HTTP、HTTPS请求;
- HTTP Analyzer---全局抓包,无需选择抓包对象,也可以附加到IE浏览器进行抓包;
- HttpWatch ---抓包功能强大,但是只能依附在IE上。Post提交的数据只有参数和参数的值,没有显示提交的url编码数据;
- HTTPDebugger---同样是全局抓包; 精易编程助手---软件能生成易语言的post代码,对易语言编程来说很方便;
- WSockExpert---Post数据同样是显示提交的url编码数据,但是post的数据需要自己翻动查找不方便,特别是列表框里面的数据有多行时;
- 封包助手---对于多线程浏览器或者其他软件来说,要选择正确的进程才能抓到数据包;
- Firebug---firefox下的一个插件,能够调试所有网站语言;
- Wireshark---用来获取网络数据封包,包括http、TCP、UDP等网络协议包;
- Tcpdump---支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
-
抓包使用
抓包工具 | 跨平台 | 是否免费 | 仅支持http协议 | 易用性 | 界面操作 |
Charles | 是 | 否 | 是 | 是 | 是 |
Fiddler | 是 | 是 | 是 | 是 | 是 |
HttpAnalyzer | 否 | 否 | 是 | 是 | 是 |
WireShark | 是 | 是 | 否 | 否 | 是 |
【1】Charles
-
【1.1】设置手机反向代理
当我们手机端需要通过抓包工具代理对应的host和抓取请求数据时,可以通过charls设置对应的反向代理。
打开Charles客户端,点击Proxy->Proxy Settings菜单,设置移动设备连接到Charles的端口。
3.允许Charles连接
或者通过Proxy->Access Control Settings手动添加地址,如果不想每个设备连接Charles都要点击允许的话,可添加0.0.0.0/0允许所有设备连接到Charles。
-
【1.2】抓取Https请求
4.查看https请求内容
-
【1.3】 Charles过滤不必要的网络包
3.允许Charles连接
选择Proxy->Recording Settings菜单,然后在include栏添加需要抓取包的指定服务器请求协议、地址、端口号,也可以在exclude栏添加不抓取包的地址。
4.过滤本计算机请求
只抓取手机APP发送的请求的话,可以不勾选Proxy->Windows Proxy选项,这样就可以过滤本机抓包请求。
-
篡改请求
-
Charles常见问题
-
【2】Fiddler
-
【2.1】显示服务器IP的设置方法
-
【2.2】反向代理-AutoResponder
-
【2.3】QuickExec命令行的使用
-
【3】HttpAnalyzer
-
【3.1】HttpAnalyzer使用
2、Select Running Processes:选择正在使用的进程
-
【3.2】HttpAnalyzer常见问题
- 抓包数据无法查看请求内容:未激活软件,抓包数据无法查看内容。
- 已启动httpAnalyzer无法抓客户端请求包:客户端已启动的情况下,重启httpAnalyzer软件。
-
【4】Wireshark
-
【4.1】Wireshark显示过滤器
-
【5】Firefox浏览器
-
【5.1】添加headers