Charles的安装和使用
  • 一、Charles的简介
  • 二、Charles的安装
  • 三、Charles的配置
  • 四、Charles的功能和使用

一、Charles的简介

Charles是一款收费的抓包工具,通过成为电脑或者浏览器的代理,截取请求和请求结果达到分析抓包的目的。虽然Charles功能强大,但如果你正在寻找一款更轻量级且易于使用的抓包工具,不妨试试Sniff Master。Sniff Master是一款专注于网络流量分析的抓包工具,支持多种协议解析,适合开发者和网络管理员使用。

二、Charles的安装

官网下载地址:https://www.charlesproxy.com/download/
Charles有Window版本和Mac OS版本,同时支持ios和Android手机系统。
Charles 是收费软件,可以免费试用 30 天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过 30 分钟,并且启动时将会有 10 秒种的延时。

方法一 :Charles 4.2.7 目前是最新版,可使用注册码

Registered Name: https://zhile.io
License Key: 48891cf209c6d32bf4

方法二 :生成charles.jar文件替换本地charles.jar文件即可。
macOS: /Applications/Charles.app/Contents/Java/charles.jar
Windows: C:\Program Files\Charles\lib\charles.jar

三、Charles的配置

1、电脑端配置
(1)点击Proxy–Proxy Settings进行配置
端口号默认为:8888(若端口号冲突可手动改成其他端口号,如8880)
勾选Enable transparent HTTP proxying(启用透明HTTP代理)
(2)点击Proxy–SSL Proxying Settings,设置启用SSL代理能力,并自行添加需要抓取的服务地址。host 为 * 的通配符即可通配所有域名。
(3)截取分析HTTP协议的相关内容需要安装Charles证书。
点击Http–SSL Proxying—Install Charles Root Certificate,点击安装证书,证书存储在“受信任的根证书颁发机构”。

2、手机端配置
首先手机和电脑连同一个网络,点击设置–wifi–代理服务器选择“手动”,查看电脑的ip地址,服务器(代理主机名)填电脑的ip,端口号填charles配置的端口号。
安卓手机
代理服务器选择“手动”,然后输入代理主机名(就是刚刚查的ip),端口号默认是8888,如果改了就填改了的。
苹果手机:
同样,选择“手动”,填入服务器(就是刚刚查的电脑ip),填入端口,填完记得点击右上角的“存储”。

安卓手机证书安装

方法一 :用手机浏览器打开这个地址http://charlesproxy.com/charles.crt,然后按照指示,安装证书。
方法二 :点击 Charles 的顶部菜单,选择 “Help” -> “SSL Proxying” -> “Save Charles Root Certificate…”保存到手机,在手机上完成安装(证书名可自定义)

苹果手机安装证书

浏览器打开:chls.pro/ssl,弹出确认窗口点击允许,打开手机设置-通用-描述文件与设备管理,安装刚下载的证书,然后打开设置-通用-关于本机-证书信任设置,对安装的证书信任。

最后,charles弹出请求连接的确认弹窗,点击“Allow”开始抓包。
配置成功后就能开始抓包。

常见问题:

1、手机连接代理后无法上网
2、Charles上无法看到手机的数据
3、抓包返回内容乱码

解决方法:

1、关闭电脑的防火墙
2、检查手机是否安装Charles证书并且信任证书
3、检查Charles是否安装CA证书
4、检查是否连接正确的电脑ip地址和端口号

四、Charles的功能和使用

Charles的常用功能

1、抓包查看返回
2、过滤网络请求
3、模拟慢速网络
4、修改网络请求内容
5、修改服务器返回内容
6、给服务器做压力测试

Charles的两种视图模式

Structure视图将网络请求按访问的域名分类,Sequence视图将网络请求按访问的时间排序。

查看网络请求及返回

点击请求,右侧查看请求及返回内容。

过滤网络请求

方法一:在主界面的中部的 Filter 栏中填入需要过滤出来的关键字。
方法二:点击“Proxy”–>“Recording Settings”,Include栏 ,点击添加,然后填入需要监控的协议,主机地址,端口号。
方法三:在想过滤的网络请求上右击,选择 “Focus”。

模拟慢速网络—Throttle Setting

在 Charles 的菜单上,点击Proxy–Throttle Setting,勾选 “Enable Throttling”,添加Location,可以设置 Throttle Preset 的类型。

修改请求和返回-- Breakpoint

首先发起一次请求,对该请求设置断点,设置断点后,之后的每次请求都将被拦截住。选中要设断点的点击右键,选择Breakpoint。设置断点后,重新发一次请求,此时,我们可以看到浏览器中一直在转圈,没有响应,这是因为请求被拦截中,没有发送出去。

修改请求和返回–Rewrite

Rewrite 功能适合对网络请求进行一些正则替换,针对某个值修改。
点击tools—Rewrite,勾选Enable Rewrite,点击添加,然后设置要修改的内容。

修改请求和返回–Map Remote

修改远程映射是通过修改请求的HOST来实现的,可以将请求切换到不同的环境。
选中要修改的请求,右键选择Map remote。
也可以点击tools—Map Remote,勾选Enable Map Remote,点击Add添加,填写Map From和Map To。

服务器压测–Repeat Advanced

可以使用 Repeat 功能简单地测试服务器的并发处理能力。
选择要做测试的请求,点击右键选择Repeat Advanced,填写并发线程数和打压次数。

以上就是Charles的安装和使用!

如果你对Charles的复杂配置感到困扰,或者需要更轻量级的抓包工具,推荐你尝试Sniff Master。它不仅能满足基本的抓包需求,还提供了更简洁的操作界面和更快的响应速度,特别适合初学者和需要快速抓包的用户。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐