zoukankan      html  css  js  c++  java
  • HTTP接口抓包工具之Fiddler

    Fiddler的基本功能介绍:

    Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于时间脚本的子系统,并且能使用.NET语言进行扩展。对HTTP协议越了解,就能越掌握Fiddler的使用方法。越使用Fiddler,就越能帮助了解HTTP协议。Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。

    Fiddler的工作原理:Fiddler是以代理web服务器的形式工作的,它使用代理本地地址:127.0.0.1,端口xxxx,如下图所示。

    能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制就是本机上监听Fiddler中设置的端口的HTTP代理。

    1 android手机和fiddler连接:

    下载地址:Fiddler.exe,http://www.telerik.com/download/fiddler

    做开发需要抓取手机app的http/https的数据包,想看APP发出的http请求和响应是什么,这就需要抓包了,这可以得到一些不为人知的api,比如还可以干些“坏事”,比如那年微信发红包看照片,就通过接口抓包成功破解,不用发红包即可看照片。

    需要工具:Fiddler抓包软件,下面介绍使用步骤

    PC上安装Fiddler

    安装文件路径:https://pan.baidu.com/s/1o7USimA

    Fiddler配置 (配置完后记得要重启Fiddler)

    一、如何使用 Fiddler2

    下载完成后安装,安装过程就不贴图了。

    1 选择下载正确的fiddler版本,启动;帮助中-About 查看版本号

                              

    ▲图7-2

    2 fiddler选项

    ▲图7-3

    3 常规中,勾选允许远程计算机连接

    ▲图7-4

    4 点击连接,勾选代理选项,端口号8888,点击OK,在这里代理就设置完成,一定要重启软件配置才生效

    ▲图7-5

    5运行cmd 查看电脑的ip地址

    ▲图7-6

    6 Android 手机一台,手机端代理设置,以华为手机为例子

    1、如下图华为手机设置:

    找到你的Wifi,必须电脑和手机处于同一个Wifi下。最好是电脑发一个Wifi出来。

     打开android手机,设置-WLAN-连接的wifi

     长按wifi热点,选择修改网络,下拉 勾选显示高级选项

     代理设置为:手动;代理主机名为你的电脑Ip,端口就是刚才Fiddler设置的端口8888,点击保存按钮

    ▲图7-7

    7.重启fiddler,以及启动手机app应用程序,即可在fiddler界面看到手机请求数据和响应数据,左侧是主机 URL;右侧嗅探是Headers查看头信息,WebForms查看参数名和值,TextView查看接口响应数据等

    ▲图7-8

    8如果只看相应app的数据,可在fiddler设置勾选过滤器,使用过滤器,仅仅显示以下主机

    ▲图7-9

    为能捕获HTTPS会话,如未安装证书,访问网站会提示”您的连接不是私密链接“,可点击高级选择继续访问,访问时会提示访问的网站是不安全的,提示证书无效,Fiddler也抓捕不到https请求。

    需要安装证书,在浏览器中输入本地ip:Fiddler中设置的端口号(127.0.0.1:8080),点击图中框图部分下载证书点击安装。

    安装时会出现以下界面。

    -------------------------------------------------------------------------

    2 IOS手机和fiddler连接

    Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获各种智能手机发出的HTTP/HTTPS请求。Fiddler能捕获IOS设备发出的请求,比如IPhone, IPad, MacBook. 等等苹果的设备。  同理,也可以截获Andriod,Windows Phone的等设备发出的HTTP/HTTPS。

    最关键的是,对IOS应用抓包时直接在Windows PC上进行,不需要非得在MAC上。下

    iphone手机配置

    (1) 网络代理设置

    安装Fiddler的机器,跟Iphone 必须在同一个网络里, 否则IPhone不能把HTTP发送到Fiddler的机器上来。一般情况,我们手头上是台式机和手机,台式机只有网线,没有无线wifi,所以和手机不在同一个网络,这时,我们就需要设置代理了

    打开IPhone,  找到你的网络连接, 打开HTTP代理,输入Fiddler所在机器的IP地址以及Fiddler的端口号8888

    ▲图7-10

    (2) Fiddler证书安装

    这一步是为了让Fiddler能捕获HTTPS请求。如果你只需要截获HTTP请求, 可以忽略这一步

    1. 首先要知道Fiddler所在的机器的IP地址:我安装了Fiddler的机器的IP地址是:172.29.58.79

    2. 打开IPhone的Safari, 访问  http://172.29.58.79:8888, 点"FiddlerRoot certificate" 然后安装证书

    ▲图7-11

    现在大功告成,可以抓包了。IPhone上的应用App发出的HTTP/HTTPS都可以被Fiddler获取,打开手机上的app,看看fiddler能否捕获。

    fiddler网络限速:

    fiddler还为我们提供了一个很方便的网络限速的功能,通过网络限速,可以来模拟用户的一些真实环境。fiddler提供了网络限速的插件,具体不详细介绍了。官网下载地址:http://www.telerik.com/fiddler/add-ons

    注意事项

    用完了之后要退出fiddler以及把IPhone上的Fiddler代理关闭, 以免IPhone或电脑不了网。

    如果只能捕获HTTP,而不能捕获HTTPS,原因可能是证书没有安装好。解决办法可以尝试重新安装fiddler证书:先删除IPhone上的Fiddler证书 (”设置“->“通用”->"描述文件")后再重新安装。

  • 相关阅读:
    阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第1节 继承_1_继承的概述
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第8节 Math类_19_Math练习:小学数学真题
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第8节 Math类_18_数学工具类Math
    iView 实战系列教程(21课时)_1.iView 实战教程之配置篇_图片优化
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第7节 Arrays工具类_17_Arrays练习:字符串倒序
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第7节 Arrays工具类_16_数组工具类Array
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_15_静态代码块
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_14_静态static的内存图
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_13_静态static关键字修饰成员方法
    阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第5节 String类_4_字符串的比较相关方法
  • 原文地址:https://www.cnblogs.com/finer/p/11895053.html
Copyright © 2011-2022 走看看