前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【IOS开发进阶系列】Fiddler——实现iphone手机的抓包

【IOS开发进阶系列】Fiddler——实现iphone手机的抓包

作者头像
江中散人_Jun
发布2023-10-16 12:26:42
3.6K0
发布2023-10-16 12:26:42
举报

http://blog.sina.com.cn/s/blog_62079f620101dkgu.html

1 Fiddler简介

        Fiddler不但能截获各种浏览器发出的HTTP请求,也可以截获各种智能手机发出的HTTP/HTTPS请求。

        Fiddler能捕获IOS设备发出的请求,比如IPhone, IPad, MacBook. 等等苹果的设备。  同理,也可以截获Andriod,Windows Phone的等设备发出的HTTP/HTTPS。

        本文介绍Fiddler截获IPhone发出的HTTP/HTTPS包

        前提条件是:安装Fiddler的机器,跟Iphone在同一个网络里, 否则IPhone不能把HTTP发送到Fiddler的机器上来。

阅读目录

截获智能手机发出的HTTP包有什么用?

配置Fiddler,  允许"远程连接"

获取Fiddler所在机器的IP地址

IPhone上安装Fiddler证书

IPhone上配置Fiddler为代理

大功告成,开始抓包

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

Fiddler捕获其他手机或者平板

2 截获智能手机发出的HTTP包有什么用?

    用处一: 手机软件程序员利用Fiddler,可以截获手机发出的HTTP包, 从而调试程序

    用处二: 软件测试人员用于测试智能手机上的软件。

    用处三: 可以用来在App应用商店中刷排名

    用处四: 截获了HTTP/HTTPS后,你想干什么就干什么,比如修改Request,或者Response.

3 (重要)配置Fiddler,允许"远程连接"

        1、打开Fiddler, Tools-> Fiddler Options 。(配置完后记得要重启Fiddler).

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

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

4 获取Fiddler所在机器的IP地址

        这个简单吧。   我Fidder所在的机器地址是:192.168.1.104

5 IPhone上安装Fiddler证书

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

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

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

6 IPhone上配置Fiddler为代理

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

7 大功告成,开始抓包

        现在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.

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

8 只能捕获HTTP,而不能捕获HTTPS的解决办法

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

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

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

9 常见问题

9.1 Willow插件使用问题

9.1.1 批量导入host之后,并没有真正更新host,还是指向老的IP

    解决方法:

        先导入beta环境IP,发起请求,再次导入Dev环境host,再次请求即可。

9.1.2 不安装fiddler证书无法发出https请求,影响微信、QQ调用

    现象:

        如果调试机器没有安装指定fiddler代理服务器IP上的证书,APP调用第三方的微信(或qq、其他走https请求的类库)时,无法发起https请求到代理服务器上,从而导致无法调起qq授权页面,或者微信授权页面走到80%时就停下来了。

    解决方案:

        从Safari浏览器中打开代理服务器IP:8888,例如http://10.18.10.3:8888,然后下载fiddler根证书安装即可。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Fiddler简介
  • 2 截获智能手机发出的HTTP包有什么用?
  • 3 (重要)配置Fiddler,允许"远程连接"
  • 4 获取Fiddler所在机器的IP地址
  • 5 IPhone上安装Fiddler证书
  • 6 IPhone上配置Fiddler为代理
  • 7 大功告成,开始抓包
  • 8 只能捕获HTTP,而不能捕获HTTPS的解决办法
  • 9 常见问题
    • 9.1 Willow插件使用问题
      • 9.1.1 批量导入host之后,并没有真正更新host,还是指向老的IP
      • 9.1.2 不安装fiddler证书无法发出https请求,影响微信、QQ调用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档