zoukankan      html  css  js  c++  java
  • 使用Charles对iPhone进行Http(s)请求拦截(抓包)

     

     

    首先准备工具

    1> Charles (下载对应操作系统的安装包进行安装,本文使用 macOS 进行演示)

    2> iPhone (本文使用SE,系统版本:iOS 10)

    开始

    首先,对Charles进行配置:

    菜单:Proxy -> Proxy Settings... -> 勾选 Enable transparent HTTP proxying

    Proxy -> Proxy Settings

    然后找到电脑的局域网IP地址:这里自己去找吧

    接着,打开你的iPhone:设置 -> Wifi -> 连接上和电脑同一路由器的Wifi,点击右边的 i 进入配置

    配置:拉到底部,找到 <HTTP代理>, 选择手动, 服务器填入电脑的IP地址,端口号写 8888 然后返回会刷新Wifi连接

    设置 -> Wifi -> i -> HTTP代理 手动

    此处配置完成后,Charles会弹出提示框,

    大意是:有人请求连接Charles ip是xxx.xxx.xxx.xxx是否允许?

    这里要注意!!!Charles的默认选项是Deny拒绝,所以一定不要按回车!!! 手动选择Allow!!!

    到此,即可正常抓取iPhone的连接。

    但,目前苹果的大部分App都采用了更安全的HTTPS进行数据交互,所以我们要抓取HTTPS还需要进一步的配置。

    继续

    回到Charles,进行证书安装:

    Charles菜单:Help -> SSL Proxying -> Install Charles Root Certificate 点击后自动打开钥匙串访问,请输入电脑开机密码

    Help -> SSL Proxying -> Install Charles Root Certificate

    完成后你会看见两个证书:

    两个证书

    双击证书,打开证书详情:展开信任 -> 使用此证书时:修改为 始终信任,关闭证书详情要求输入开机密码

     
    信任 -> 使用此证书时

    两个证书都设置为始终信任。

    接着,安装手机端的证书:

    回到Charles,菜单:Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser

     
    Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser

    点击后会弹出对话框,大意是:配置你的设备来使用Charles,证书下载地址:chls.pro/ssl

     
    配置手机端证书

    打开手机Safari,访问下载地址:chls.pro/ssl  (如果我们显示的不同,则以提示中的地址为准)

    正常情况下访问此地址会请求安装一个配置文件。若无请求请检查Wifi是否设置了 HTTP代理 (参考配置图:设置 -> Wifi -> i -> HTTP代理 手动)。

     
    手机端安装证书1

    点击安装:

     
    手机端安装证书2

    网上很多教程到这就结束了,但返回Charles会发现还是无法正常抓取HTTPS的请求。

    其实还有一个设置,信任证书:

    打开iPhone设置:通用 -> 关于手机 -> 拉到最底部 证书信任设置 -> 勾选刚刚安装的证书

     
    信任证书

    好了,回到Charles进行最后的收尾设置:

    菜单:Proxy -> SSL Proxying Settings...

     
    Proxy -> SSL Proxying Settings...

    勾选:Enable SSL Proxying,点击 Add 添加规则

     
    域名:配置完上述所有内容后,你会在Charles中看到很多请求,都是以域名为标题的

    域名:配置完上述所有内容后,你会在Charles中看到很多请求,都是以域名为标题。

    端口:恒定为443

    若不需要指定HTTPS连接(即抓取所有HTTPS连接),域名填写 * 即可。

     
    配置 SSL Proxying

    TIPS:

    > WIFI代理,请在不需要使用的时候关闭,否则可能导致手机无法正常联网。

    > 若Charles界面一片空白

     
    一片空白

    点击菜单:File -> New Session

     
    File -> New Session

    然后就有了

     
    有了

    测试数据:获取QQ中的QQ天气

     
    QQ天气

    完。






  • 相关阅读:
    ZOJ 3332 Strange Country II
    ZOJ 3331 Process the Tasks(双塔DP)
    ZOJ 3326 An Awful Problem(模拟)
    HDU 1796 How many integers can you find(容斥原理)
    HDU 4059 The Boss on Mars(容斥原理)
    HDU 4135 Co-prime(容斥原理)
    HDU 5677 ztr loves substring(回文串加多重背包)
    CodeForces 668B Little Artem and Dance
    CodeForces 667A Pouring Rain
    Java实现 LeetCode 764 最大加号标志(暴力递推)
  • 原文地址:https://www.cnblogs.com/mabingxue/p/8780117.html
Copyright © 2011-2022 走看看