• Fiddler抓包工具总结2


    2. Fiddler 设置解密HTTPS的网络数据

    Fiddler可以通过伪造CA证书来欺骗浏览器和服务器。Fiddler是个很会装逼的好东西,大概原理就是在浏览器面前Fiddler伪装成一个HTTPS服务器,而在真正的HTTPS服务器面前Fiddler又装成浏览器,从而实现解密HTTPS数据包的目的。

    解密HTTPS需要手动开启,依次点击:

    1. Tools –> Fiddler Options –>  HTTPS

     2. 勾选Decrypt HTTPS Traffic

     

    3. 点击OK

     

    3. Fiddler 抓取Iphone / Android数据包

    想要Fiddler抓取移动端设备的数据包,其实很简单,先来说说移动设备怎么去访问网络,看了下面这张图,就明白了。

     

    可以看得出,移动端的数据包,都是要走wifi出去,所以我们可以把自己的电脑开启热点,将手机连上电脑,Fiddler开启代理后,让这些数据通过Fiddler,Fiddler就可以抓到这些包,然后发给路由器(如图):

     

    1. 打开Wifi热点,让手机连上(我这里用的360wifi,其实随意一个都行)

     

    2. 打开Fidder,点击菜单栏中的 [Tools] –> [Fiddler Options]

     

    3. 点击 [Connections] ,设置代理端口是8888, 勾选 Allow remote computers to connect, 点击OK

     

    4. 这时在 Fiddler 可以看到自己本机无线网卡的IP了(要是没有的话,重启Fiddler,或者可以在cmd中ipconfig找到自己的网卡IP)

     

     

    5. 在手机端连接PC的wifi,并且设置代理IP与端口(代理IP就是上图的IP,端口是Fiddler的代理端口8888)

     

    6. 访问网页输入代理IP和端口,下载Fiddler的证书,点击下图FiddlerRoot certificate

     

    【注意】:如果打开浏览器碰到类似下面的报错,请打开Fiddler的证书解密模式(Fiddler 设置解密HTTPS的网络数据)

    No root certificate was found. Have you enabled HTTPS traffic decryption in Fiddler yet?

     

     

    7. 安装完了证书,可以用手机访问应用,就可以看到截取到的数据包了。(下图选中是布卡漫画的数据包,下面还有QQ邮箱的)

     

    4. Fiddler 内置命令与断点

    Fiddler还有一个藏的很深的命令框,就是眼前,我用了几年的Fiddler都没有发现它,偶尔在别人的文章发现还有这个小功能,还蛮好用的,整理下记录在这里。

    FIddler断点功能就是将请求截获下来,但是不发送,这个时候你可以干很多事情,比如说,把包改了,再发送给服务器君。还有balabala一大堆的事情可以做,就不举例子了。

     

    命令

    对应请求项

    介绍

    示例

    ?

    All

    问号后边跟一个字符串,可以匹配出包含这个字符串的请求

    ?google

    >

    Body

    大于号后面跟一个数字,可以匹配出请求大小,大于这个数字请求

    >1000

    <

    Body

    小于号跟大于号相反,匹配出请求大小,小于这个数字的请求

    <100

    =

    Result

    等于号后面跟数字,可以匹配HTTP返回码

    =200

    @

    Host

    @后面跟Host,可以匹配域名

    @www.baidu.com

    select

    Content-Type

    select后面跟响应类型,可以匹配到相关的类型

    select image

    cls

    All

    清空当前所有请求

    cls

    dump

    All

    将所有请求打包成saz压缩包,保存到“我的文档\Fiddler2\Captures”目录下

    dump

    start

    All

    开始监听请求

    start

    stop

    All

    停止监听请求

    stop

    断点命令 

    bpafter

    All

    bpafter后边跟一个字符串,表示中断所有包含该字符串的请求

    bpafter baidu(输入bpafter解除断点)

    bpu

    All

    跟bpafter差不多,只不过这个是收到请求了,中断响应

    bpu baidu(输入bpu解除断点)

    bps

    Result

    后面跟状态吗,表示中断所有是这个状态码的请求

    bps 200(输入bps解除断点)

    bpv / bpm

    HTTP方法

    只中断HTTP方法的命令,HTTP方法如POST、GET

    bpv get(输入bpv解除断点)

    g / go

    All

    放行所有中断下来的请求

    g

     

     示例演示:

     

     

     

     

     

     

     

     

    断点命令:

    断点可以直接点击Fiddler下图的图标位置,就可以设置全部请求的断点,断点的命令可以精确设置需要截获那些请求。如下示例:

     

     

    命令:

    bpafter

     

    bps

     

     

    bpv

     

     

    g / go

     

     

     

     

  • 相关阅读:
    Hashtable,挺爽的一个东西,大家都用烂了吧,我再画蛇添足一下。
    今天你写控件了吗?ASP.net控件开发系列(八)
    Attribute在运行期赋值?
    整几个题给大家玩玩,看看“下盘功夫”怎样
    当stringFormat碰上{和}
    一句SQL语句解决倒序数据分页提取
    C#扩展一般用于linq
    字符串转日期类型
    Dispatcher与UI线程交互
    圆形进度条
  • 原文地址:https://www.cnblogs.com/yszr/p/15527378.html
Copyright © 2020-2023  润新知