美文网首页
APP 抓包方法 - Charles

APP 抓包方法 - Charles

作者: 沈宥 | 来源:发表于2021-02-05 11:42 被阅读0次

一、电脑安装Charles ssl证书

并配置始终信任
屏幕快照 2020-05-25 下午1.57.45.png
打开电脑钥匙串,双击已下载的证书,即可打开配置信任页面
屏幕快照 2020-05-25 下午1.59.14.png

二、Android手机安装证书

手机浏览器打开:chls.pro/ssl

下载并安装Charles.pem证书

EA4D344D24F7DA8191602459FFACAA8B.jpg

三、配置客户端证书

在 Charles 中安装带有客户端认证的 HTTPS 的抓包配置证书

备注:Charles安装的证书用来保证能抓取到https请求;Client Certificates用来解析服务端返回数据(如果不安装,会导致数据解析失败)

Charles -> Proxy -> SSL Proxy Settings... -> Client Certificates -> Add

截屏2020-07-16 上午11.14.49.png

四、关闭手机端的VPN连接

打开APP,可正常抓包

五、断点修改接口请求、返回值

1、添加断点接口组

由于小猪的接口中存在gatets、gatesign等根据时间戳生成的可变参数,所以在断点时,需要将整个接口组都进行断点,直接选中后右键显示复选框

截屏2020-07-21 上午11.41.32.png

2、修改请求、返回值内容

已经添加断点后,再次请求该接口,Charles会主动拦截到该接口请求,在Edit Request页面可根据自己的需求进行修改

  • Add:添加新的参数
  • Remove:选中某个参数,删除该参数
  • Execute:执行请求动作(已修改会待着修改后的参数进行修改)
  • URL:展示请求的URL、请求方法method、请求参数
  • Headers:请求头
  • Text:请求文本
  • 点击任意参数值,可直接进行修改内容value值
截屏2020-07-21 上午11.46.10.png

执行请求后,会继续断点拦截请求返回的内容,在Edit Response页面进行修改

  • Text:返回内容以文本形式展示
  • JavaScript:返回内容以JavaScript形式展示
  • JSON Text:返回内容以JSON Text形式展示
  • JSON:返回内容以JSON形式展示
  • Execute:执行请求动作(已修改会待着修改后的参数进行返回)

选中任意返回参数值,可直接进行修改

3、取消所有断点

  • 直接将之前已选中断点的接口,右键点击后在复选框内取消选中

  • 菜单栏中找到断点快捷键,点击后一键取消所有断点

六、可能遇到的问题

1、Charles未打开抓取HTTPS接口的配置

Charles -> Proxy -> SSL Proxy Settings... -> SSL Proxying -> Add,添加443端口的拦截

屏幕快照 2020-05-25 下午6.20.46.png
2、电脑安装Charles ssl证书

(手机(Android && iOS)、电脑(Mac && PC)具体安装Charles证书的教程:https://wproxy.org/whistle/webui/https.html

3、手机安装证书(

手机(Android && iOS)、电脑(Mac && PC)具体安装Charles证书的教程:https://wproxy.org/whistle/webui/https.html

4、手机和电脑的网络端保持一致

(比如都连接同一个 wifi),并且手机配置代理

5、关闭手机的VPN连接

相关文章

网友评论

      本文标题:APP 抓包方法 - Charles

      本文链接:https://www.haomeiwen.com/subject/eimwtltx.html