Charles抓取HTTPS Windows Android iOS 图文详细
文章目录
- 背景
- 操作原理
- windows 安装Charles
- Charles配置
- 第一步:配置HTTP代理,这步与抓取HTTP请求是一样
- 第二步:配置SSL代理
- 第三步 :为手机配置代理
- iPhone 代理配置
- Android 代理配置
- 第四步:安装根证书
- iPhone 安装charles证书
- Android 安装charles证书
- windows 安装charles证书
- 抓包
- 正常抓包
- 抓包乱码
背景
后端小伙伴接口文档没写,问接口时,回复说web已经实现了,抓包看接口和参数。虚心的应了句,试试看。结果也不是如此,支付下单的后端接口到能直接调用微信支付的仅在微信内打开h5才能自然支付,此时抓包不再是f12的事情了。需要使用代理,本文主要讲windows 上Charles抓手机上的https包,包括Android 和 ios。
操作原理
关键的操作思想:
- 构造一个中间人代理,它有能力完成TLS/SSL握手
- 弄到一个根证书,并用它生成签名认证的代理服务器证书
Charles就是一个理想的中间人,它支持SSL握手,可以自动根据根证书生成一个签名的服务器证书,并且它的官网为我们提供了一个根证书。
我们要做的就是在客户端安装好这个根证书,然后让我们的操作系统信任它。对App来说,需要设法在IOS或Android上装上这个官网提供的根证书。
完成上述步骤后,App再指定Charles(电脑)为它的代理服务器,这时,App(或手机浏览器)请求的服务器证书就是Charles自动生成的代理服务器证书。如果Charles的根证书已被信任,这个自动生成的代理服务器证书是有效的,使用它App和Charles的TLS握手可以顺利完成。
windows 安装Charles
官网下载或其他网站下载都可以,官网现状是30天免费。
下载完成后双击运行,一直下一步直到安装结束。
Charles配置
第一步:配置HTTP代理,这步与抓取HTTP请求是一样
选择在8888端口上监听,然后确定。勾选SOCKS proxy,还能截获到浏览器的http访问请求。
说明:这里的8888端口作用是监听端口,手机设置代理时就要填写这个端口。
第二步:配置SSL代理
在charles的 Proxy选项选择SSL Proxy Settings
接着在弹出的对话框中点击add,添加需要监视的域名。域名支持 *号通配符,如:抓取所有的https请求,可以填写 *:443
如果想要抓取qq.com的域名,可以填写 *.qq.com
鄙人就填了*:443,外加一个18043端口
第三步 :为手机配置代理
在手机无线中配置手动代理,输入安装Charles的电脑的网络地址,端口填8888(上文中提到过)。
iPhone 代理配置
我的是iphone12,系统14.7
设置 - 无线局域网 找到当前网络,点击信息
接着拉到底
打开配置代理,选择手动,填写电脑ip(图中为我的IP,请修改为your电脑ip),监听端口(8888)进行配置,然后记得存储(保存)
Android 代理配置
我的华为 nova3e Android 9
- 设置 - 无线与网络 - WLAN 找到当前连接的网络并长按,选择修改网络
- 勾选 显示高级设置 ,然后显示代理后选择手动
- 设置代理服务器后记得保存
第四步:安装根证书
这里安装根证书是指Charles的根证书,包括电脑和手机都需要安装。手机安装证书时,必须执行到了上面第三步,手机已经设置好了代理(此时不能访问百度或其他网站,不要慌)。
iPhone 安装charles证书
在Safri上打开Charles的根证书下载网址: chls.pro/ssl 。
下载完之后会提示 到设置app中查看描述文件(证书),点击关闭
设置 - 通用 中可以找到 "描述文件"选项,并打开
找到刚才下载的证书,点击安装,安装过程中需要输入屏幕密码,没有需要设置屏幕密码
此时会有提示,只管继续安装
安装成功后如下:
去设置信任(非常关键)
设置 - 通用 - 关于本机, 拉到底后看到 证书信任设置 点开
开启证书信任:
Android 安装charles证书
在自带浏览器上打开Charles的根证书下载网址: chls.pro/ssl 。前提也是Windows charles 先配置好代理(完成第二第三步),手机网络设置好代理服务器。
下载后无法打开无法识别(不要慌)
设置 - 安全和隐私 - 更多安全设置 - 加密和凭据
接着选择 ”从存储设备安装“
再选择下载的证书文件
安装证书,需要输入屏幕密码或设置屏幕密码(没有的话),弹框中选择WLAN
安装成功后可以在 ”用户凭据“中查看
至此Android 证书安装完成,可以在 受信任的凭据 - 用户 中看到刚才的证书是受信任的
windows 安装charles证书
charles 菜单 help - SSL Proxying - Install Charles Root Certificate
弹出如下提示框,选择安装证书
安装过程中不要选择个人用户,要选本地计算机(足够的权限)
选择及那个所有证书放入指定的受信任的存储区
安装完成后可以查看证书的详细信息和路径
抓包
手机代理配置好,证书配置好,手机开始访问期望的接口或网站
正常抓包
能看到明文的参数和响应数据
抓包乱码
- SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations
点击后面的Notes查看原因:
这样提示是因为没有开启ssl(https) 的代理,这样去开启
重新开始抓包即可(可不重启charles),需要手机刷新页面
- 加密数据
这种情况下是接口开发人员把数据加密传输的,要解密已经不是本文要讲的内容。
Charles抓取HTTPS Windows Android iOS 图文详细相关推荐
- 浅谈Charles抓取HTTPS原理及HTTP CONNECT
浅谈Charles抓取HTTPS原理 在关于HTTPS,你需要知道的全部中,分析了HTTPS的安全通信过程,知道了HTTPS可以有效防止中间人攻击.但用过抓包工具的人都知道,比如Charles,Fid ...
- 使用Charles抓取https请求
总结下使用Charles进行简单接口压力测试以及修改接口请求,Charles是一款非常好用的抓包工具,通常使用它来进行APP开发抓包调试,尤其是HTTPS请求. 一.安装Charles 去官网(htt ...
- Charles抓取https请求
最近公司将Windows产品的http请求,替换成https请求了,当https请求超过5次失败,就自动切换回http请求.测试时使用Charles抓包测试. 一.http抓包 http抓包比较简单, ...
- Charles抓取https的坑,记录一下备用,想爆粗口了
Charles抓包网上一大串的操作,就是抓不了https,无奈吧 安装证书 在这里面自己找 安装到这里面就行了: ssl设置 在这里自己配置一下: 端口设置 这里自己设置: 手机装证书??? 自己he ...
- Charles抓取Https安装证书
方法1 Charles安装证书 保存证书 谷歌浏览器安装所需要证书 方法2
- Charles抓取微信小程序数据 以及 其它应用网站数据
为了抓取小程序数据所以使用Charles来抓取,下面介绍下使用方法(mac环境下使用).使用Charles可以非常方便的抓取Http/Https请求.官方dmg下载地址:点击此处下载 Charles抓 ...
- 使用Charles 抓取数据包
一.Charles抓取不到http请求 Charles 安装好,启动了之后,基于HTTP的数据抓取,一般情况下直接设置Proxy ->Proxy Settings->Port (8888) ...
- 【教程】小米手机Android 7.0+抓取HTTPS请求安装Charles证书主要流程
以下教程可能耗费你数小时时间,请注意时间. 目标:抓取HTTPS的包 如果你的手机是在Android 7.0+及其以上,想要抓取HTTPS的请求,必须要将证书(*.pem)用系统用户的权限安装,即把这 ...
- 利用charles 抓取ios app的https数据包-----软件配置和抓取步骤
背景:最近在做数据缓存相关的工作:我们的设备是放在高铁里面的,主要是提供wifi服务.然而我们的wifi是由sim卡4g网络拨号提供的,用户在上网时需要下载我们的APP:掌上高铁:所以领导提出一个要求 ...
最新文章
- php的正则怎么写,一个正则的写法 php
- mysql导入sql文件过大或连接超时的解决的方法
- Docker+Jenkins持续集成环境(3)集成PMD、FindBugs、Checkstyle静态代码检查工具并邮件发送检查结果...
- 后APP时代的破局之路 :阿里技术“三大容器五大方案”亮相,百川开放全面升级...
- C++ 复数类加减法运算重载为成员函数形式
- CSS实现TikTok文字抖动效果
- lower版购物车模拟
- [转]理解事件捕获和事件冒泡
- MyCat2测试实战 -- 王者归来的故事
- 线程创建的三种方式和线程池创建的四种方式
- 全球高效能人士给青年的50个忠告(上)
- 时域OCT与频域OCT的区别
- 大白菜u盘装win10步骤图解
- web前端利用leaflet生成粒子风场,类似windy
- 移动Web第七天(响应式网页:媒体查询、BootStrap)
- Android 设置黑白滤镜
- http协议_代理服务(proxy)
- MATLAB矩阵画法,MATLAB矩阵与数组
- 金融IC卡全“芯”起航
- sdnu oj 1194 传纸条 双线程DP