优秀案例

Charles - 手机网络抓包

2018-01-18  本文已影响89人  十二书

貌似常用的手机网络抓包软件有 Charles 和 Fiddler。除了界面差异外,

Map Remote/Local 和 Rewrite 都在 Tools 菜单里面。

  1. Map Remote/Local
    Map Remote/Local 可以设定匹配条件,然后将匹配条件的网络请求的响应,用其他的网络数据代替(Remote),或者用本地文件代替(Local)。
    支持用“*”做匹配符。
    大致如下图:


    local.png remote.png
  2. Rewrite
    Rewrite 的作用,是在网络请求头后面追加一些数据。当然,除了 Add Header,还有更强大的功能。
    设置和效果,如下图:


    Rewrite 设置.png Rewrite 效果.png
    1. 不要代理 PC 网络
      打开 Charles 以后,默认也会代理 PC 的网络。调试手机的时候,挺烦人的。可以关掉。


      不代理 PC 网络.png
Fiddler 设置不代理 PC 网络.png

还有一个网络相关的小工具,SwitchHosts!,可以方便的在 PC 上设置 host。工具截图如下,其中左边是替换为的 IP,右边是要被替换的服务器地址:

SwitchHosts!.png

设置完后,可以通过 Charles 查看,目标服务器都会被设置的 hosts 代替。


Charles HTTPS 抓包的小坑

  1. 下载手机的SSL证书。这一步很关键,你需要点击help -》SSL Proxying-》Save Charles Root Certificate,然后选择目录,保存一个类似于这样的“charles-ssl-proxying-certificate.pem”文件。

  2. 给手机安装证书。将证书导入手机后,打开手机的文件管理器,找到charles.pem,点击安装。
    也可以尝试通过连接 Charles 代理后,浏览器输入 chls.pro/ssl 下载。然后通过 设置 -> 安全隐私 之类的页面,安装证书

  3. 切记在 Charles 软件上打开 SSL Proxy setting

image.png

然后就可以用 Charles 抓 HTTPS 包了。

上一篇 下一篇

猜你喜欢

热点阅读