玩转Fiddler抓包教程(2)-初识Fiddler让你理性认识一下
1.引言今天的理性认识主要是讲解和分享一些提琴手的基础理论知识。这部分其实也没什么,主要是给朋友或者童鞋讲一些实际的工作场景,然后隆重推出我们的猪脚(主角)——提琴手。
1.1你有过这样的在工作场景下做app测试的经历吗?1.在调试和解决bug的时候,后端开发的同事总是让你拿着手机一点点,然后他在后台看数据是否异常。(一天早上,
不小心过了)2。在调试解决bug的时候,前端开发同事也让你帮忙创建一些数据,于是你辛辛苦苦创建了一个数据,他点了一下,数据用完了,bug没有解决。所以我让你再做一次数据。(一天下午,
又一个不小心的过去)3。你遇到过这种情况吗?你发现一个bug提交给前端开发,他说是后端返回数据的问题。于是你找后端开发,他说是前端数据提交的问题,让你找前端开发。(一个晚上过去了,
Bug没有解决。)此时,有请我们的主角——提琴手登场。前面这些问题他都能解决。温馨提示:全程有很多干货和内容。建议新手朋友可以先喜欢收藏再慢慢看!
2.引言在这个网络信息时代,计算机安全始终是一个令人担忧的问题,网络安全更是雪上加霜。许多计算机专家经常使用Fiddler的这一功能作为代理来抓取对话并修改它们以达到他们想要的目标。
Fiddler是一个强大的跨平台HTTP(S)抢包神器,不要用它做坏事。它的英文名是Fiddler,中文名是Violin。Fiddler是一个HTTP协议调试代理工具。
它可以记录和检查所有的HTTP,FTP和HTTPS包之间的计算机和互联网。通过设置断点,用户还可以修改Fiddler的数据“进出”。因为Fiddler具有强大的数据捕获和修改功能,
因此Fiddler被广泛应用于Web渗透测试领域。Fiddler是最强大最有用的Web调试工具之一,可以记录所有客户端和服务器的http和https请求。
允许您监控、设置断点,甚至修改输入和输出数据。Fiddler包含一个基于。。脚本的强大子系统,并且可以通过。网语。换句话说,你对HTTP协议了解得越多,你就越能掌握如何使用Fiddler。
使用Fiddler越多,就越能理解HTTP协议。Fiddler对于开发人员和测试人员来说都是非常有用的工具。
Fiddler以web代理服务器的形式工作,同时也是一个代理工具,用于捕获和调试http协议数据。
它可以记录和检查你的计算机与互联网之间的当前http消息,也就是说,它可以拦截、重新发送、编辑和转储网络传输和接受的数据包,它还可以用于检测网络安全。
3.数据包捕获:使用特定的工具获取客户端和服务器端发送和返回的数据包。目的是分析数据包的内容和协议,从而判断是否符合设计要求。
其实就是截取、转发、编辑、转储网络收发的数据包,也是为了检查网络安全。
4.什么情况下需要抓包?1.当开发人员希望您重现bug、截取数据并定位问题时?2.在判断问题是前端bug还是后端bug的时候?3.当开发要你做接口测试,却不给你接口文档——“方法,接口地址,
传递参数、头和返回内容。4.在不修改任何环境的情况下修改返回的结果,即mock——“模拟接口”
5.为什么要学提琴手哥,从三个角度解剖给朋友或者童鞋看:
5.1提琴手本身的优点1。功能强大。它也有其他工具拥有的功能,也有其他工具没有的功能。它支持http、https和ftp等协议。2、完全免费,长期免费。3.所有浏览器都可以使用。
所有的平台都可以使用。就冲着这三点,就值得拥有。
5.2同类产品对比除了Fiddler还有哪些能抓包?抓包工具:wireshark、fiddler、httpwatch、charles、chrome开发者工具(F12),各工具的对比,
说到抓包工具,有Fiddler、Charles、HttpWatch、WIRESHARK等知名、不知名的.当然工具没有强弱好坏之分,
只是看在什么场景下使用更为适合!Fiddler和同种类型的抓包工具对比,如下图所示:
从上图我们可以看出:我们为什么选择Fiddler进行抓包,可以看一下它的比较。首先第一个Fiddler它的优势,独立运行,第二个支持移动设备(是否能抓移动APP的包,
)在这一块的话wireshark、httpwatch就不支持,因此在这一块就可以排除掉前连个,因为我们有时候去进行测试的时候,除了测web端,也会要去测app端,在企业里经常去要做的事情。
然后Fiddler是免费的,charles是收费的。当然我知道大家都能够各显神通,做坏事的时候,记得带上你的负罪感。当然你选择这个免费工具的前提是,它满足你的需求,能够解决你的问题,
并不是说我随便找一个不能解决我问题的工具,这个肯定是不行的,至于说在这一块想去用一下wireshark、httpwatch可以自行去下载使用,我们今天主要分享Fiddler。(需要软件测试相关安装包,
可以微信公众号主页点击领取资料,安装包,教程都给你准备好了,免费)
5.3用户在测试中,不管是做手工测试,还是接口测试,我们都需要查看后端返回的数据。有的时候,我们也需要调试,或者mock一下后端的返回,来验证前端是否达到预期。为了捕获这些请求,抓包工具不可少。
熟练掌握一些抓包工具,可以方便我们测试,调试,分析问题。不管是在开发、还是在测试阶段中,“抓包”都是定位bug的主要方法之一。特别是当你提交bug给对应的开发同学,如果没有“铁证”,
他们通常都拒绝修改。甚至还会高傲的对你说“你抓个包看看,是不是后台或者接口的问题啊,憋有事没事给我提bug~”。这个时候,Fiddler就可以帮助你快速打脸回去了~当然,打脸不是目的,
帮助开发同学快速精准的定位bug原因,才是王道!
6.Fiddler是什么?那么Fiddler究竟是什么?能干什么呢? 《度娘宝典》 如是说:Fiddler是一个http协议调试代理工具,
它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。
Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。
6.1宏哥推荐的原因1.安装配置简单,快速上手(别说咸鱼,菜鸟都会~);基本功能强大,新手必备(简直不要太好用~);2.能记录所有客户端(PC端和手机客户端)和服务器间的Http和Https请求,
可监视、设置断点、修改response和request,模拟低速网速环境,还能够使用.net框架语言扩展)
7.Fiddler支持和不支持的功能宏哥经常会遇到的一些小伙伴或者童鞋们的私信或者留言的问题类似于:“宏哥,我可以使用Fiddler来完成XXX吗?Fiddler适用于很多场景中。但是,对于一些场景,
Fiddler是不合适的。绝大多数情况下,人们所使用的是Fiddler的少数几个功能。一下将简单说明Fiddler所适用的场景。
7.1Fiddler支持功能的不完整列表1.查看几乎所有的浏览器、客户端应用或者服务之间的web数据流。监控我们浏览器所有的http/https的信息和流量,也就是所有的请求或者响应,
所有的流量都可以监听。2.手动或者自动修改任意的请求或者响应。当监听截取到http请求之后,
就可以做一些查看分析浏览器请求的内容细节,就可以伪造一些请求伪造一个服务器的响应都是可以的!3.解密HTTPS数据流以便查看和修改4.归档捕获到的数据流,
支持不同计算机上加载这些数据5.给客户端应用“回放(play back)”先前捕获到的响应,即使当前服务器处于脱机状态。6.绝大多数PC和各种设备之间的Web数据流的调试,
包括Mac/Linux系统、智能手机和平板电脑。7.挂接到(chain to)上游代理服务器,包括TOR网络(TOR是专门防范对流量探嗅分析的软件项目。
它通过由遍及全球的中继所组成的分布式网络转发通信,可以实现匿名访问网络。)8.还可以测试网站的性能9.作为反向代理运行,在不需要配置客户端计算机或者设备的情况下,在服务端捕获的数据流。
10.全局、局部断点功能!11.第三方插件
7.2Fiddler不支持功能的不完整列表Fiddler是一个非常灵活强大的工具,但某些功能目前还不支持。
1.调试非网络协议数据流(1)Fiddler支持HTTP、HTTPS和FTP数据流以及相关协议,如HTML5 WebSockets和ICY流。(2)Fiddler无法监测或修改基于其他协议的数据,
如SMTP、POP3、Telnet、IRC等。2.处理超大请求和响应(1)超过2GB的请求,Fiddler无法处理(2)超过2GB的响应,
Fiddler的处理能力有限(3)Fiddler使用系统内存和页面文件(pagefile)来保存会话数据。保存大量的会话或者超大的请求和响应会导致性能急剧下降。
3.“神奇”地修复网站的错误(bug)(1)Fiddler可以用来协助识别网络问题,但通常不能独立修复这些bug。
8.Fiddler应用场景Fiddler的应用场景也很广泛,
具体应用场景如下:1.接口调试2.接口测试3.线上环境调试4.web性能分析5.判断前后端bug6.开发环境hosts配置7.mock模拟测试8.弱网断网测试要知道Fiddler作为系统代理,
所有的来自互联网服务的http(Https)请求在到达目标Web服务器之前都会经过Fiddler,同样的,所有的Http(Https)响应都会在返回客户端之前也会经过Fiddler。
9.Fiddler部署9.1Fiddler环境部署1.下载Fiddler,
官方下载地址:https://www.telerik.com/download/fiddler填写好电子邮箱和国家地区点击Download for windows就可以下载了。如下图所示:
2.安装:傻瓜式安装,一直点下一步,直达完成为止。安装成功会显示如下界面,如下图所示: