Fiddler抓包之【 抓取https请求 】详解教程

Fiddler抓包之【 抓取https请求 】详解教程抓包之前 先了解一下 Fiddler

大家好,欢迎来到IT知识分享网。

Fiddler抓包之【 抓取https请求 】详解教程 

目录:导读

引言

概况

基本原理

抓HTTPS的原理

HTTPS请求两类

Fiddler抓包要求

总结

写在最后


引言

  在日常测试中,不管是功能测试还是接口测试,避免不了抓包。抓包工具有很多,这里只讲fiddler的使用,并且是对https请求的抓取。

概况

  抓包之前,先了解一下Fiddler。

  Fiddler是一款免费且功能强大的数据包抓取软件。它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视、设置断点、甚至修改输入输出数据等功能。fiddler包含了一个强大的基于事件脚本的子系统,并且能够使用.net框架语言扩展。

基本原理

Fiddler抓包之【 抓取https请求 】详解教程

  简单来说就是:

抓HTTPS的原理

  现在APP中的数据传输基本上都使用HTTS传输,传输的数据都是经过加密的,这增加了我们分析数据包的难度,还好Fiddler除了可以抓取HTTP数据包,还可以抓取HTTPS数据包。由于HTTPS传输需要使用到CA证书,所以抓取抓取HTTPS数据包时需要做一些特殊配置。Fiddler截取HTTPS报文的流程大致如下:

Fiddler抓包之【 抓取https请求 】详解教程

HTTPS请求两类

  1.带证书的https请求:请求中携带证书,只要证书正确就能请求过去,没有其它要求。

  2.不带证书的https请求:只要是CA颁布的正规证书(收费的),都可以不用携带证书,达到https的加密效果,大大减轻了请求的代码量,但是这种请求必须要求请求方合法(时间要正确,比如把手机时间调成几天前,证书就会认为请求非法,拒绝访问)

Fiddler抓包要求

  从上面可以看到,fiddler相当于代理,客户端和服务器交互都要通过fiddler,Fiddler抓取HTTPS协议成功的关键是根证书(根证书是CA认证中心给自己颁发的证书,是信任链的起始点。安装根证书意味着对这个CA认证中心的信任。),这是一个信任链的起点,这也是Fiddler伪造的CA证书能够获得客户端和服务器端信任的关键。

  手机或模拟器抓包https请求的话,需要在手机上安装fiddler证书。

  安装步骤这里不复述了。

问题1:需要注意的是,不是任何Https请求包都可以抓到的。

  Android7.0以下是可以的,只要手机里安装对应的CA证书,比如用Charles抓包,手机只需安装Charles提供的证书就行;Android7.0之后,Google推出更加严格的安全机制,应用默认不信任用户证书(手机里自己安装的证书),自己的app可以通过配置解决,但是抓其它app的Https请求就行不通。

  首先看一下安卓7.0以上的系统,抓包如下:

  

Fiddler抓包之【 抓取https请求 】详解教程

  

Fiddler抓包之【 抓取https请求 】详解教程

如果是安装7.0以下的版本,这里拿安卓4.0来演示,如图:

   

Fiddler抓包之【 抓取https请求 】详解教程

Fiddler抓包之【 抓取https请求 】详解教程

  结论是android7.0以下版本,在模拟器下抓包https是没有问题的。当然手机同样的版本也会支持。而高于7.0的安卓系统则抓不了https请求。

  注意这里的https请求是没有携带CA证书到请求中去的。

问题2:如果不能,那些情况下可以抓取,那些情况下抓取不到?

  虽然Android7.0之后常规手段不能抓Https的包,但是可以通过黑科技跳过证书验证流程,例如,通过xposed,安装JustTrustMe模块,Https证书验证直接跳过。这个没有试过,可自行测试。

问题3:如何防止被抓包?

  1. Https双向验证,不是客户端的请求,拒接链接(这里服务端拒绝和客户端建立连接)
  2. 判断是否是使用WIFI代理(不可靠,可以通过hook跳过)
  3. 数据加密传输(很多app都是采用加密传输,要注意密钥的安全问题,防止被反编译泄露密钥)

总结

  以上就是手机或模拟器抓取https请求包的介绍。一些简单安装或抓取步骤就没在这里一一讲解。 另外对自动化测试,测试开发及性能测试相关的朋友可以加入交流群,学习与沟通~

写在最后

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

看到这篇文章的人有觉得我的理解有误的地方,也欢迎评论和探讨~

你也可以加入下方的的群聊去和同行大神交流切磋

 Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程Fiddler抓包之【 抓取https请求 】详解教程

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/111784.html

(0)
上一篇 2026-01-22 18:16
下一篇 2026-01-22 18:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信