IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 利用charles抓包 -> 正文阅读

[网络协议]利用charles抓包

charles是一款http抓包软件,和fiddler极为相似,所以大家就会问,为啥不用fiddler呢,因为mac没有fiddler。而且charles还是付费版本。所以我们这里从安装破解到抓包成功一步一步讲清楚。

下载并安装

我们进入charles官网进行下载:https://www.charlesproxy.com/latest-release/download.do ,我是mac,所以选择其中的macOS在这里插入图片描述

下载dmg包之后我们正常的安装,安装完成打开,大概就是这样的模样
在这里插入图片描述

破解

我们打开激活码生成界面:
https://www.zzzmode.com/mytools/charles/
在这里插入图片描述
其中RegisterName可以随意填写,然后点击生成即可获得激活码。接着我们从charles的菜单栏里进入: Help -> Register Charles 即可打开激活charles的入口
在这里插入图片描述
我们将生成的name和key填入,点击Register之后charles会被关闭,重新启动即完成激活了。

配置SSL证书抓https包

破解完成后我们回过头来看一下一开始打开charles的那个界面,里面全是unknow,原因是这些https请求需要配置SSL证书。我们从菜单进入:Help -> SSL Proxying -> Install Charles Root Certificate,点击会会弹出mac的用户钥匙界面
在这里插入图片描述
我们找到Charles的这个证书,当前是不被信任的,我们双击进入到信任设置界面在这里插入图片描述

使用此证书时选择「始终信任」,设置后关闭即可,然后我们重新启动charles。

现在我们可以来做个测试,我们在百度上进行一个搜索
在这里插入图片描述

然后我们在charles中 「ctrl + F」 根据关键字搜索
在这里插入图片描述

就可以看到我们在哪些接口中有我们的关键字,然后我们在点击进入到具体的接口在这里插入图片描述

可能有小伙伴会发现自己的测试效果有问题,显示的是如图所示的全是unknow
在这里插入图片描述

可能是因为没有设置要代理的域名和端口,我们从charles的菜单:Proxy -> SSL Proxying Settings打开之后进入这个弹窗
在这里插入图片描述

我们点击红框选中的Add可以配置需要进行抓包的地址
在这里插入图片描述

如果专门的限制的话,我们直接全部都填*即可。表示任意地址和任意端口都抓包。之后我们重复上面的测试流程再看看效果,应该就好了。

或许大家可能会说抓浏览器的包没有意义呀,懂点相关知识的都知道F12浏览器的开发工具里啥都有,哪里还需要抓包工具。我们可以在看一下,我电脑上启动的Apifox客户端,charles也会被抓到它的包,只要用的是http通讯,不管是网页还是客户端都可以看的一清二楚。
在这里插入图片描述

配置网络代理抓手机的包

能够实现抓PC端的包之后,我们可能还希望能够通过它去抓手机的包。首先我们需要去让电脑和手机处于同一局域网,比如用手机给电脑开个wifi,或者让他们连同一个wifi就好了。我们进入到手机wifi设置界面在这里插入图片描述

我这里是长按可以编辑wifi,不同手机方式可能不太一样,打开类似如下界面
在这里插入图片描述
服务器主机名我们填写电脑的ip地址(mac在wifi设置界面就能看到自己的ip地址,window可以在cmd中输入ipconfig命令获取),服务器端口号填写charles的代理端口号,如果你没有修改过的话,默认是8888。保存后如果首次一般charles会弹出这个弹框。在这里插入图片描述

点击Allow就好了。

这时我们可以去手机上尝试打开个网页之类的看看效果,但很可能不仅啥也抓不到,而且连网都上不了。原因也是现在的网络请求基本都是https的,所以需要配置SSL 证书才行。

给手机端安装SSL证书

我们还是从charles的菜单:Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser。然后他会弹出一个教程
在这里插入图片描述

大致意思是在手机上用浏览器打开 chls.pro/ssl 这个地址(这个地址不一定是这个,我看网上很多其实不是这个地址,所以还是大家自己点击到这个教程看一下)下载证书,然后安装并设置为手机的信任证书,我们打开这个网址
在这里插入图片描述

选择立即下载。之后我们去进行证书安装,这个步骤每种手机的入口都不太一样,大家可以在设置里找找"凭证"之类的字样,或者百度一下,我是华为P40所以以华为P40为例,从设置 -> 安全 -> 更多安全设置 -> 加密和凭证,选择从存储设备安装,华为p40有这个设置选项需要注意
在这里插入图片描述

这里需要选择VPN和应用。

以上就是基本全部完成了,我们我们尝试打开京东App进入到某个界面
在这里插入图片描述

然后charles就能抓取到相关的接口调用。
在这里插入图片描述这个时候我们可以在换个app,比如盒马,我们会发现部分页面能打开,部分网页直接打不开了。抓的接口也都是unknow状态。这就是app本身做了反抓包的相关设计,这个后面再讲。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-04-24 09:48:45  更:2022-04-24 09:48:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 3:53:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码