Charles抓包工具的安装和使用(超全超详细)

一、Charles的简介

Charles 是一款收费的抓包工具,通过成为电脑或者浏览器的代理,截取请求和请求结果达到分析抓包的目的。
在这里插入图片描述

二、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

方法二:从这个网站(https://www.zzzmode.com/mytools/charles/)生成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 为 * 的通配符 即可通配所有域名。
在这里插入图片描述
在这里填入Host和Port就好了。
在这里插入图片描述

(3)截取分析HTTP协议的相关内容需要安装Charles证书。
点击Http–SSL Proxying—Install Charles Root Certificate,点击安装证书,证书存储在“受信任的根证书颁发机构”。
在这里插入图片描述
按着截图顺序操作就好。
在这里插入图片描述
2、手机端配置
首先手机和电脑连同一个网络,点击设置–wifi–代理服务器选择“手动”,查看电脑的ip地址,服务器(代理主机名)填电脑的ip,端口号填charles配置的端口号。
在这里插入图片描述
这里是查看电脑的ip地址,手机连接代理需要输入连接电脑的ip。
在这里插入图片描述
也可以通过cmd查看本机ip,打开cmd,命令:ipconfig。
在这里插入图片描述
安卓手机
代理服务器选择“手动”,然后输入代理主机名(就是刚刚查的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视图将网络请求按访问的时间排序。

Structure视图:
在这里插入图片描述
Sequence视图:
在这里插入图片描述
查看网络请求及返回

点击请求,右侧查看请求及返回内容。
在这里插入图片描述
过滤网络请求

方法一:在主界面的中部的 Filter 栏中填入需要过滤出来的关键字。例如我们要看的地址是:https://www.baidu.com/, 在 Filter 栏中填入关键字“baidu”即可。
在这里插入图片描述
方法二:点击“Proxy”–>“Recording Settings”,Include栏 ,点击添加,然后填入需要监控的协议,主机地址,端口号。
在这里插入图片描述
方法三:在想过滤的网络请求上右击,选择 “Focus”。
在这里插入图片描述
模拟慢速网络—Throttle Setting

在 Charles 的菜单上,点击Proxy–Throttle Setting,勾选 “Enable Throttling”,添加Location,可以设置 Throttle Preset 的类型。
在这里插入图片描述
修改请求和返回-- Breakpoint

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

查看Charles的Breakpoints,点击Edit Request,里面分别有URL、Header、cookies等,可以进行修改,然后点击右下角的Execute按钮,如果不修改请求的话,直接点击Execute按钮,点击Execute按钮后,此次请求才发送出去;点击Abort,中断请求。
在这里插入图片描述
PS:compose也能达到相同效果,但仅针对当前此次请求,而打了断点,每次发送这个请求,都会要求去编辑。

修改请求和返回–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,填写并发线程数和打压次数。
在这里插入图片描述
填写并发线程数:10,打压次数1。
在这里插入图片描述
以上就是Charles的安装和使用!

  • 5
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值