Fiddler的使用教程(基础篇)
前言:本次技术分享的目的在于,带领一些没用过抓包的同学认识和学习抓包的基础知识,掌握抓包工具的初步使用
1.抓包的定义和用途
抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作。
我们技术人员一般使用抓包工具来对项目,软件进行抓取传输数据,分析,测试,定位各种问题,也可以使用工具来模拟构造数据进行测试。下面我们来介绍一款常用的抓包工具【Fiddler】
2.fiddler是什么?
Fiddler(中文名称:小提琴)是位于客户端和服务器端之间的代理,也是目前最常用的抓包工具之一 。它能够记录客户端和服务器之间的所有请求,可以针对特定的请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。
3.工作原理
工作原理
当浏览器访问服务器会形成一个请求,此时,fiddler就处于请求之间,当浏览器发送请求,会先经过fiddler,然后在到服务器;当服务器有返回数据给浏览器显示时,也会先经过fiddler,然后数据才到浏览器中显示,这样一个过程,fiddler就抓取到了请求和响应的整个过程。
Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。
4.使用介绍
安装:
fiddler的安装就不做介绍了,都是一路确定很简单。这里给个不错的文章连接,是介绍安装的
https://blog.csdn.net/ychgyyn/article/details/82154433
使用介绍:
fiddler可以抓取http和https的数据,http的数据直接你可以抓,但是https的数据需要安装证书并进行一些配置。如下所示:
打开Fiddler Tool->Fiddler Options->HTTPS 。 (配置完后记得要重启Fiddler)
选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求,第一次会弹出证书安装提示,若没有弹出提示,勾选Actions-> Trust Root Certificate
另外,如果你要监听的程序访问的 HTTPS 站点使用的是不可信的证书,则请接着把下面的 “Ignore servercertificate errors” 勾选上。
点击Yes,留意一下红框里面的内容,DO_NOT_TRUST_FiddlerRoot ,这个就是证书的名称。
点击跟着步骤安装fiddler证书到你的电脑上。证书名称为【DO_NOT_TRUST_FiddlerRoot】
如果我们想要抓取手机上app的传输数据的话需要在手机上也安装上证书,并作如下设置
下面以安卓手机为例展示手机端安装整数和配置端口
首先在pc端打开fiddler并保证手机和电脑在同一网络下,这里设置代理端口号为默认的8888
先查看自己的电脑的ip地址(代打开cmd,输入:ipconfig)
在手机的wifi设置中选择你正在连的wifi的,把代理改为手动并配置主机名为电脑的ip;把端口改为设置的代理端口号8888,然后保存。
在手机浏览器输入电脑ip和端口号,如:192.xxx.xxx.230:8888 根据提示下载证书文件,并安装到手机上就可以抓取app的数据了
界面说明:
这个是fiddler的主界面
来看界面的左侧区域
再看界面的右侧区域
右侧区域的上半部分是一个请求的request信息,下半部分是请求的response信息
这里借用一篇文章来向大家简单的介绍fiddler 强大的过滤功能
https://www.cnblogs.com/sjl179947253/p/7627250.html
好了本次的分享到这里结束了,谢谢大家。