一.简介
抓包工具fiddler
二.下载安装Fiddler
下载地址:Download Fiddler Web Debugging Tool for Free by Telerik
1.下载界面
![](https://img.haomeiwen.com/i1379549/c9498ed71b553273.png)
![](https://img.haomeiwen.com/i1379549/98a8d2479ab8dd41.png)
因为我的目的是为了手机端抓包,所以选择mobile,接下来填写你的邮箱和国家,写好之后选择Download for Windows进行下载
2.Fiddler的安装
下载完成后双击安装包
![](https://img.haomeiwen.com/i1379549/7dfa2df4b8e86af0.png)
点击I Agree,然后选择你想要存放的安装目录,如不需要修改,使用默认即可,之后选择Install进行安装
![](https://img.haomeiwen.com/i1379549/9ed517cbfb75047c.png)
安装成功后点击close。
三.Fiddler的配置
3.1
![](https://img.haomeiwen.com/i1379549/ba276bc7c991b472.png)
![](https://img.haomeiwen.com/i1379549/38171ef046406b7f.png)
将上面红框里的勾选,这个是为了允许抓取https的流量。如果第一次使用,勾选之后会提示你安装一个证书,这个证书就是用来做中间人进行抓包的,Fiddler使用此证书来解密所捕捉到的包,在加密发送到相应的服务器端或者客户端。
![](https://img.haomeiwen.com/i1379549/1797bb3595490123.png)
如果没有弹出来可以点击右边的Actions按钮,然后选择Trust Root Certificate按钮,然后全部选择是就ok了。
之后再选择Actions中的第二个选项将证书导出到桌面,在对应的浏览器里面添加即可
之后选择抓取哪一部分的流量
![](https://img.haomeiwen.com/i1379549/50d9a339a133be7b.png)
1.from all processes:抓取所有进程的流量
2.from browsers only:只抓取浏览器的流量
3.from non-browsers only:不抓取浏览器的流量
4.from remote clients only:抓取远程的客户端,当需要抓取的是手机端的流量,就需要用到这个
接下来设置端口号
![](https://img.haomeiwen.com/i1379549/ed7380d4a2edbede.png)
一般默认即可,下面的那个 Allow remote computers to connect 是允许远程的客户端进行连接,如果抓取手机端的也需要勾选
3.2
![](https://img.haomeiwen.com/i1379549/6a5630e5b8a91557.png)
![](https://img.haomeiwen.com/i1379549/31a40c3d7a2deb84.png)
此时用手机链接wifi,然后长按wifi名修改网络,点击代理,选择手动
![](https://img.haomeiwen.com/i1379549/d8b28361af891c09.png)
主机名:电脑的ip地址,选择电脑win+R,输入cmd,回车,输入ipconfig
![](https://img.haomeiwen.com/i1379549/df693700c04276a1.png)
由于我的电脑也是链接wifi,所以ip地址对应的时无线网络的,如果你的电脑使用网线上网,ip地址就是以太网的那个
填写完之后还不能抓取,如果直接抓取会显示证书有问题,也需要安装证书才可以正常抓取。
安装证书:
在手机浏览器输入你的ip地址:端口号 进入网址下载证书,如 192.168.1.1:8888,端口号是之前在Fiddler设置的那个
![](https://img.haomeiwen.com/i1379549/d54f08efaa00616c.png)
点击上述链接进行下载安装即可,如果设置完了,网络没了,那就重启一下Fiddler就可以进行抓包了
3.3对https抓包
如果上述都设置完成后,发现app抓取https无法成功解析请求的包信息,可以通过以下步骤设置:
在目标项目的res/xml目录下创建一个network_security_config.xml文件,然后加入如下配置:
![](https://img.haomeiwen.com/i1379549/3c015ed4428fbfdc.png)
接着在AndroidManifest.xml中配置android:networkSecurityConfig属性来让上述配置生效:
![](https://img.haomeiwen.com/i1379549/d974f0e572ebaabb.png)
这样我们就可以对当前的应用程序发出的https网络请求进行抓包了。
因为在Android7.0系统中进行了一项安全升级,从Android7.0系统开始,只是在手机上安装了抓包工具的证书,仍然无法对https请求进行抓包,还必须要在应用程序的代码中加入一段网络安全配置才行。默认情况下,我们无法对各个APP的https请求进行抓包。浏览器并不存在这个问题,因为它的Chromium内核源码中已经配置过,而所有基于Chromium内核的浏览器也就都自动拥有了这个功能。
四.抓包内容的介绍
![](https://img.haomeiwen.com/i1379549/ff929a1d80c1c546.png)
左边是捕捉的请求和响应,右边对应的是请求的详细信息,比如请求头,表单信息;
左边每列代表的含义为:
![](https://img.haomeiwen.com/i1379549/6888954adb0a5524.png)
五、常用功能
1.查找:抓包时,经常会抓到一堆不重要的包,而需要找的包夹杂在里面非常难找,所以就可以用关键字来查找,入口为:![](https://img.haomeiwen.com/i1379549/5dfb4bdcf4d13263.png)
或者可以直接点
![](https://img.haomeiwen.com/i1379549/fea9c5d6e9ef7de3.png)
也可以快捷键Ctrl+F即可:
![](https://img.haomeiwen.com/i1379549/7134a7733cc933ec.png)
2.映射:也就是重定向,将服务器端的响应内容可以更改为客户端上的文件,功能也很强大。
网友评论