Fiddler 是位于客户端和服务器的HTTP代理,它能记录所有客户端和服务器的HTTP和HTTPS请求响应,进行截获、重发、编辑、转存等操作; Fiddler 允许监视、设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。
1、Wireshark :通用抓包工具,抓取信息量庞大,需要过滤才能得到有用信息,只抓HTTP请求有点大财小用。 2、Firebug、HttpWatch等Web调试工具,不够给力,功能欠缺。 3、Charles:建议MAC上使用。 4、Fiddler:是一个HTTP协议调试代理工具;
抓包其中涉及三个角色: 客户端 、 代理、 目标服务器。 Fiddler是通过改写HTTP代理,让数据从它那通过,来监控并且截取到数据。Fiddler在打开它的那一瞬间,它就已经设置好了浏览器的代理了。当你关闭的时候,它又帮你把代理还原了。
正常访问网页或App路径是: 客户端 —> 目标服务器 抓包,其实就加入了一个代理,相当于古代的 媒人 ,客户端 —> 媒人(代理)–>目标服务器 三者如何产生联系呢?
https://www.telerik.com/download/fiddler
toast:下载Fiddler要翻墙
Inspectors是用于查看会话的内容,上半部分是请求的内容,下半部分是响应的内容
名称含义Headers请求头信息显示为一个分级视图,包含了web客户端信息、Cookie、传输状态等Textview显示 POST 请求的 body 部分为文本WebForms显示请求的 GET 参数 和 POST body 内容,特别说明,这里 body 应该是 application/x-www-form-urlen-coded 格式HexView用十六进制数据显示请求Auth显示 header 中的 Proxy-Authorization 和 Authorization 信息WebView用来显示网页Auth用来认证,一般登录账户密码才会有这个消息CookiesCookies指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)Cookie 会帮你在网站上所打的文字或是一些选择,都记录下来(类似一些推送,会根据你的浏览记录,给你推送一些计算机认为你需要的东西,所以会存在个人隐私泄露和安全等问题)Raw将整个请求显示为纯文本,请求的完整信息,这里可以看到请求的方法、地址、路径、协议版本、头信息和参数等JSONJOSN格式显示XML如果请求的 body 是 XML 格式,就是用分级的 XML 树来显示它eg:
允许你拦截指定规则的求情,并返回本地资源或Fiddler资源,从而代替服务器响应
允许自定义请求发送到服务器,可以手动创建一个新的请求,也可以在会话表中,拖拽一个现有的请求
Parsed模式下你只需要提供简单的URLS地址即可(如下图,也可以在RequestBody定制一些属性,如模拟浏览器User-Agent)
Fiters 是过滤请求用的,左边的窗口不断的更新各种请求数据,通过过滤规则来过滤掉那些不想看到的请求。
1 )勾选左上角的Use Filters开启过滤器
两个最常用的过滤条件:Zone和Host Zone 指定只显示内网(Intranet)或互联网(Internet)的内容 Host 指定显示某个域名下的会话 设置完之后,点击actions–>Run Filterset now就可以过滤出某个域名下的会话
在左侧会话窗口点击一个或多个(同时按下 Ctrl 键),Timeline 便会显示指定内容从服务端传输到客户端的时间
找到 Tools —> Options, 主要配置 HTTPS,Connections 信息
toast:主要配置勾选好之后,点击确认,第一次配置会出现安装证书的请求,一路点击 是就对了, 配置完毕一定要记得重启Fiddler,否则失效
Connections 配置,主要是 让手机 或电脑 链接 Fiddler(媒人),默认端口号为:8888 3)重启Fiddler,或者可以在cmd中ipconfig找到自己的网卡IP
不择手段让 客户端 链接媒人,和媒人产生联系。 客户端已经和 Fiddler(媒人)产生一定联系了,已经可以抓取 windows软件 和 IE 了,windows微信中 的小程序也可以抓取。
谷歌 和 火狐浏览器的,他们的代理不像IE自动,需要手动配置他们的代理,这里 我以 谷歌为例。 第一种方式:寻到谷歌 代理配置路径(路径自己百度),配置:127.0.0.1:8888 第二种方式:以上是简单做法,这种需要 翻墙 下载扩展程序(Proxy SwitchyOmega) ,进行配置
1)手机端与PC电脑必须处于同一个网络,可以选择连接同一个wifi,或者手机连接PC的wifi 2)手机打开设置,wifi网络代理IP与端口(代理IP就是上图的IP,端口是Fiddler的代理端口8888) eg: 3) 访问网页输入代理IP和端口,下载Fiddler的证书,点击下图FiddlerRoot certificate 4) 如果打开浏览器碰到类似下面的报错,请打开Fiddler的证书解密模式(Fiddler 设置解密HTTPS的网络数据) ios: 安装证书:设置–>通用–>描述文件与设备管理–>点击需要安装的证书进行安装 信任证书:设置–>通用–>关于本机–>证书信任设置–>开启需要信任的证书 5)手机安装完了证书,PC浏览器安装一个二维码插件,访问H5页面,例如https://baidu.com/,手机扫码打开即可。可以用手机访问应用,就可以看到截取到的数据包了。 chrome商店 chrome 二维码插件