优质广告供应商

广告是为了更好地支持作者创作

iOS MacOS下请求抓包(包含HTTPS)

通常对于已经装在苹果手机中的应用,想要验证一些bug或者作为上架前的完整性验证,需要抓取Http请求的参数和相应服务器响应。下面介绍下在macOS下对苹果手机的抓包操作

环境:
1.电脑macOS10.12
2.移动端iOS10
3.电脑端软件:Charles for mac(官网:https://www.charlesproxy.com/latest-release/download.do)
4.电脑和手机连接在同一wifi下(或者电脑有线,热点共享给移动端)
注:官网的下载可以试用30天,也可网上下载破解版的

一、Http请求的抓取

1.电脑和手机连接上wifi,电脑打开设置-网络-选中左边正连接的网络(我的是有线,就选择以太网了,一般选择wifi),记录下右边的IP地址,如图:

查看IP

2.手机打开设置-无线局域网-选中当前连接的wifi-HTTP代理选中手动,服务器填写之前电脑端的ip,端口号填写默认的8888,点击左上角返回到上个界面

手机端代理设置

3.打开电脑端的charles,注意连接上代理的手机必须要打开charles才能使用正常的网络连接,有的时候发现手机网络连接不上需要关闭代理或者打开charles。这时候手机端的请求已经出现charles左边的列表中了,点击可以查看具体的请求。

二、Https请求的抓取

上面的方法只能抓取到Http请求,对于Https只能抓取到接口,但是不能看到具体的请求内容,请求的响应内容都是以乱码的形式显示。此时我们需要在电脑端和手机端都装上charles的证书,并且把需要抓包的请求域名放入到SSL代理的解析列表中

1.电脑端证书的安装
charles - Help - SSL Proxying - Install Charles Root Certificate

电脑端证书的安装

2.电脑端信任证书
钥匙串-双击charles证书-总是信任

信任证书

3.移动端证书的安装
charles - Help - SSL Proxying - Install Charles Root Certificate...mobile Device or Remote Browser

移动端证书的安装1
移动端证书的安装2

连接代理的手机浏览器打开图中选中的地址,不同版本的charles地址有可能不一样。在弹出的界面中安装对应的描述文件。有的版本的charles可能需要重新进入手机端的配置-描述文件-charles的描述文件中去信任一下,我这边4.2版本charles iOS10已经不需要这步操作了。

4.把需要解析的地址加入到列表中
charles - Proxy -SSL Proxying Setting - 列表中需要添加解析的域名(不需要加后面的请求路径以及前面的请求协议)

charles代理设置
增加需要解析的域名

到这里,https的请求参数以及响应内容已经能顺利地抓到了

大功告成

优质广告供应商

广告是为了更好地支持作者创作

推荐阅读更多精彩内容

  • 目录 准备 分析2.1. 三次握手2.2. 创建 HTTP 代理(非必要)2.3. TLS/SSL 握手2.4. ...
    RunAlgorithm阅读 34,956评论 12 116
  • 简书上的文章已经不再维护,有兴趣阅读其他文章,或一起交流的朋友,请移步 我的博客:punmy.cn 原文 本篇博客...
    胖绵羊阅读 9,749评论 7 36
  • 优质广告供应商

    广告是为了更好地支持作者创作

  • 抓包分析数据在移动开发中十分重要,可以帮助我们更快的了解数据构成,提高开发效率。但是在苹果要求上线的App必须使用...
    梧雨北辰阅读 13,231评论 21 34
  • 喜欢睡前阅读已经成为了一种习惯,今天读到一句话“无论世界有多繁杂的变化,但要记得的是,忠于自己,才是最重要的决定。...
    素咫阅读 1,694评论 0 0
  • 来往的汽车,白的前灯,红的尾灯,一排排延伸到目力不能及的远方。站在楼上望下去,如同无数个萤火虫在暗夜里闪烁,又像大...
    疏林红叶阅读 515评论 22 16
  • 我是日记星球125号星宝宝吴翊灵,正在参加日记星球第九期训练,这是我的第196篇原创日记。你看或不看,我都在写,你...
    wu溧蕙阅读 269评论 2 1
  • 优质广告供应商

    广告是为了更好地支持作者创作

  • 因缘之地山生浩, 尽处沧桑海定形。 缈缈峰波苍岁意, 绵绵云绻世间情。 壮峦方作干村界, 秀水同流万木青。 玉带缠...
    70ad6eefbfdd阅读 149评论 0 0