教程开始

安装 fiddler

首先准备一台可以上网的 windos 电脑,准备一部智能手机。 
fiddler 抓包工具:下载地址( 自行百度一搜一大片)。安装,打开如果遇到. net framework 错误,下载一个高本版的. net 即可。好了教程已经完成了一大半。 
打开 fiddler 随便打开下浏览器。发现已经可以抓包,但想要抓手机 https 还需要做一些设置。 

配置 fiddler

  1. 打开 fiddler 配置 Tools –> Fiddler Options. 
  2. 打开 HTTPS 配置项,勾选 “CaptureHTTPS CONNECTs”,同时勾选 “Decrypt HTTPS traffic”,弹出的对话框选择是(这里是按照 fiddler 自己的证书)如果跟我一样手机跟电脑是用 wifi 进行链接的话还需要选择 “…fromremote clients only”。如果需要监听不可信的证书的 HTTPS 请求的话,需要勾选 “Ignore servercertificate errors”。 
  3. 打开 Conections 配置项, 这里可以修改 Fiddler 代理端口号。勾选 “Allow remote computersto connect。提示需要重启 fiddler。 
  4. 哈哈,高端的来了,需要写点代码。这里是为了可以抓客户端使用 httpURLConnection 的包。 
    Ruler –>CustomizeRules 
    在函数 OnBeforeResponse 里面添加下面代码:
if (oSession.oRequest["User-Agent"].indexOf("Android") > -1 && oSession.HTTPMethodIs("CONNECT")) {
oSession.oResponse.headers["Connection"] = "Keep-Alive";
}
  • 1
  • 2
  • 3

添加后代码为:

static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
if (oSession.oRequest["User-Agent"].indexOf("Android") > -1 && oSession.HTTPMethodIs("CONNECT")) {
oSession.oResponse.headers["Connection"] = "Keep-Alive";
}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

不要忘记重启 fiddler!!!

配置手机

保证手机跟 pc 是在同一个网段下。 
配置手机连接的 wifi,可能每个手机打开 wifi 配置的方式都不太一样,仔细研究下,选择已经连接的网络,打开修改网络窗口。显示高级属性,配置网络代理–> 手动 代理服务器主机名:填写 pc 机的 IP 地址即可例如:192.168.0.4,代理服务器端口号:fiddler 的代理端口号,如果没有修改就是 8888。 
关键步骤哈: 
下载安装 fiddler 的证书 
 
在手机浏览器打开 代理服务器:端口号 例如上面填写的就是 192.168.0.4:8888,点击页面中的 “FiddlerRootcertificate” 链接,在弹出的对话框中随便设置一个名称确定即可。

抓包截图

测试机上没装多少软件,打开百度钱包来试试 

好了。大功告成!

让我们想想

通过 fiddler 可以抓包,是不是说 https 就是不安全的了呢,毕竟所有的请求对我们来说都是透明的呢。其实刚才的过程很重要的一点就是我们下载并且安装了 fiddler 的根证书,对于 pc 端来说就是配置 fiddler https 选项时弹出的对话框,对于手机来说就是我们去 pcip 地址: fiddler 代理端口这个地址下载证书的过程。 
而对 https 的安全来说,https 安全的前提就是可信的根证书!!!! 
而,之前的操作无疑是在我们系统里面安装了不可信的根证书。使得 fiddler 对我们的通信造成了中间人攻击!。 
简单的说就是我们与服务器进行通信,会先获取服务器的证书,进行校验校验过程是用本地的可信根证书进行校验,而装入 fiddler 的根证书后,fiddler 可以伪造证书,获取我们与服务器通信的秘钥,进行破解我们的通信。所以对我们我们系统来说安装证书是一个多么危险的操作! 
哐哐哐!!查水表!!!

[转]fiddler 抓包 HTTPS 请求的更多相关文章

  1. 【转】fiddler抓包HTTPS请求

    本文转自:http://blog.csdn.net/idlear/article/details/50999490 fiddler抓包HTTPS请求 跟着教程来,保证100%成功抓HTTPS包 教程开 ...

  2. fiddler抓包HTTPS请求

    fiddler抓包HTTPS请求 标签: fiddlerhttps抓包 2016-03-29 21:24 23293人阅读 评论(2) 收藏 举报  分类: 不登高山不知天之高也(1)  版权声明:本 ...

  3. 【Fiddler学习】Fiddler抓包HTTPS请求和手机抓包

    一.安装Fiddler 百度搜索:Fiddler抓包工具,然后安装即可. 然后打开Fiddler工具,打开浏览器随意输入任何网址,就可以在Fiddler看到抓包信息. 但是:默认情况下,Fiddler ...

  4. Fiddler抓取https请求 & Fiddler抓包工具常用功能详解

    Fiddler抓取https请求 & Fiddler抓包工具常用功能详解   先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...

  5. fiddler抓取https请求(android/ios)

    本文转载自:http://blog.csdn.net/songer_xing/article/details/53841401 备注:本人有这样的一个需求,先记录下,以后再进行整理. 在抓包过程中发现 ...

  6. 如何使用fiddler抓取https请求(PC和移动端)

    最近做一个抓取移动端app接口,并执行评论,收藏的接口功能测试.怎么搞/(ㄒoㄒ)/~~ 按照老思路试一试,第一步还是要用fiddler来帮忙获取接口信息! 一.基本的抓取http请求设置: 1.cm ...

  7. fiddler抓取https请求

    Fiddler抓取https设置详解(图文):https://www.cnblogs.com/joshua317/p/8670923.html Fiddler要抓取到https请求我们还需要Fiddl ...

  8. Fiddler抓包6-get请求(url详解)

    前言 上一篇介绍了Composer的功能,可以模拟get和post请求,get请求有些是不带参数的,这种比较容易,直接放到url地址栏就行.有些get请求会带有参数,本篇详细介绍url地址格式. 一. ...

  9. Fiddler抓包6-get请求(url详解)【转载】

    本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/fiddler/ 前言 上一篇介绍了Composer的功能,可以模拟get和post请求 ...

随机推荐

  1. 【转】Java并发编程:Thread类的使用

    一.线程的状态 在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于对Thread类中的方法的理解. 线程从创建到最终的消亡,要经历若干个状态.一般来说,线程包括以 ...

  2. Razor视图基本语法

    <!--Razor C#--> @for (int i = 0; i < 10; i++) {     <baobao>good</baobao> } < ...

  3. Hibernatede 一对多映射配置

    Hibernatede 一对多映射配置 以公司和员工为例:公司是一,员工是多   第一步 创建两个实体类,公司和员工        写核心配置文件hibernate.cfg.xml        写映 ...

  4. Mysql8.0安装步骤

    Mysql8.0安装步骤 2018年05月10日 14:39:05 93年的香槟 阅读数:19628 标签: mysql 更多 个人分类: 数据库   版权声明:本文为博主原创文章,未经博主允许不得转 ...

  5. Java_oracle超出打开游标的最大数的原因和解决方案

    第一步:核查Oracle数据库 的游标的最大数 处理超出打开游标的最大数异常(ORA-01000: maximum open cursors exceeded) ORA-01000_maximum_o ...

  6. linux 批量进行:解压缩某一类压缩文件类型的文件

    1: 编写脚本 [oracle@oracle oracle]$ vim unzip.sh ziphome=/u01/app/oracle ziplist=`du -a $ziphome |grep ' ...

  7. Confluence 6 访问日志脚本

    日志访问脚本在连接:https://confluence.atlassian.com/download/attachments/133267635/Atlassian-accessLogScripts ...

  8. Android CTS Test

    什么是CTS测试?了解这个问题前,我们先来搜索了解一遍“Google GMS 认证”.GMS全称为GoogleMobile Service,即谷歌移动服务.说白了GMS其实就是一系列谷歌的应用集合.谷 ...

  9. MybatisPlus使用介绍

    创建UserController测试类 package com.cppdy.controller; import org.apache.ibatis.session.RowBounds; import ...

  10. extjs中store的reload事件异步问题解决

    转载自:http://blog.sina.com.cn/s/blog_8f8b7fc10100zd75.html store0.reload({params:{start:0, limit:10}}) ...