zoukankan      html  css  js  c++  java
  • [转]使用Fiddler进行iOS APP的HTTP/HTTPS抓包

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

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

    一、PC上安装Fiddler

    步骤略。

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

    打开Fiddler,   Tools-> Fiddler Options 。

    选中"Decrpt HTTPS traffic",    Fiddler就可以截获HTTPS请求

    选中"Allow remote computers to connect".  是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来

    三、手机配置

    (1)  网络代理设置

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

    打开iPhone,  找到你的网络连接, 打开HTTP代理, 输入Fiddler所在机器的IP地址(比如:192.168.1.104) 以及Fiddler的端口号8888

    (2) Fiddler证书安装

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

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

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

    现在大功告成,可以抓包了。iPhone上的应用(比如Safari, Firefox, Itunes, App Store)发出的HTTP/HTTPS都可以被Fiddler获取。 

    实例: 打开Safari,  

    1. 输入http://www.cnblogs.com/tankxiao.  看看Fiddler能否捕获。

    2.  输入https://dynamic.12306.cn/otsweb/   看看Fiddler能否捕获。

    是不是HTTP和HTTPS都截获到了?,  你不但能截获, 还可以下断点,修改Request, 修改Response, Do what you want. 

    3.只抓取自己的IOS包

    四、注意事项

    (1) 用完了, 记得把IPhone上的Fiddler代理关闭, 以免IPhone上不了网。

    (2) 只能捕获HTTP,而不能捕获HTTPS的解决办法

    有时候会发现, Fiddler 只能捕获IPhone发出得HTTP请求, 而不能捕获HTTPS请求, 原因可能是证书没有安装好。 解决办法是:

    1. 先把IPhone上所有的Fiddler证书删除 (拿出IPhone, 点”设置“->“通用”->"描述文件")

    2. 安装上面的方法,重新安装Fiddler证书

    PS:如果完成以上操作后,手机无法通过fiddler上网。检查一下电脑上的防火墙阻止fiddler访问了。一般关闭fiddler,防火墙会弹出提示是否允许fiddler访问。选择允许访问即可。

  • 相关阅读:
    webpack学习1-打包
    Cordova开发-2 自定义插件
    Vue项目开发1-项目的创建
    Cordova开发-2 具体插件的使用
    Cordova开发-1 项目的创建
    Mybatis的使用
    XAMPP设置上的问题
    七款Debug工具推荐:iOS
    sqlite内置函数
    CATransition常用动画及type
  • 原文地址:https://www.cnblogs.com/kaerxifa/p/8493315.html
Copyright © 2011-2022 走看看