您的位置 首页 > 数码极客

Charles抓包工具的安装与配置

云和安全管理服务专家新钛云服 吕涵之原创


1、抓包工具的优缺点

TCPdump:只能在linux下使用,前提是你需要会操作linux系统。

Fiddler:只能在windows下使用,专门用来捕获HTTP、HTTPS的。

wireshark:常常在windows/macOS下使用,可以抓取所有协议的内容,但是不能解密HTTPS ,所以wireshark看不懂HTTPS中的内容。如果是处理HTTP,https 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark。它非常适合协议的学习和网络问题的分析,但是它需要你具备一定的网络知识,所以对初学者来说不是很友好。

charles:跨平台的抓包工具能在linux/windows/macOS下使用,它是基于HTTP、HTTPS的代理服务器 ,支持域名或者接口两种方式查看报文,弱网测试非常友好,可以直接选择网络类型 。


2、Charles抓包原理

Charles作为一个中间人代理,在客户端给服务器端发消息的时候,会截取客户端发送给服务器的请求,然后伪装成客户端与服务器进行通信;服务器返回数据时将截取的数据发送给客户端,伪装成服务器与客户端进行通信。

图2-1 charles抓包原理


3、安装

点击下载地址: ,根据自己的系统选择对应的安装包进行下载安装。

图3-1 下载charles


4、注册

charles启动需要10秒钟,运行半小时会强制关闭 ,为了不影响正常的使用,我们需要激活charles。访问激活码计算器: 获取License,根据下图步骤注册charles。

图4-1 获取License

图4-2 注册charles


5、过滤器

方法一:Filter过滤

在主界面Filter栏中填入需要过滤出来的关键字,例如我们只想抓取csdn相关的请求 , 那么只需要在 Filter 栏中填入csdn 即可。

图5-1 Filter过滤

方法二:Recording Settings过滤

在 Charles 的菜单栏选择 “Proxy”–>“Recording Settings”,然后选择 Include 栏,选择添加一个项目,然后填入需要监控的协议,主机地址,端口号。这样就可以只截取目标网站的封包了。如下图所示:

图5-2 Recording Settings过滤1

图5-3 Recording Settings过滤2

方法三:Focus过滤

在想过滤的网络请求上右击,选择 “Focus”,之后在 Filter 一栏勾选上 Focussed 一项,如下图所示,这种方式可以临时性的,快速地过滤出一些没有通过关键字的一类网络请求。

图5-4 Focus过滤


6、访问控制

控制哪些ip是允许访问Charles的,默认本机都是允许 ,实际场景请看下面抓取App数据的操作。

图6-1 访问控制


7、https

现在抓取https协议的数据报文 ,可以看到左边请求地址显示的是unknown,右边的报文是乱码的,所以我们需要安装SSL根证书解析报文。

图7-1 无法解析https

第一步、安装SSL根证书

图7-2 安装SSL根证书

图7-3 安装证书

图7-4 本地所有用户通用

图7-5 证书受信任

图7-6 导入证书

图7-7 证书导入成功

第二步、设置HTTPS代理配置

图7-8 设置HTTPS代理配置

图7-9 允许所有主机和端口

图7-10 查看https报文


8、抓取App的数据报文

第一步、保持手机和电脑在同一网段,同一无线、热点。(同一个局域网)

第二步、下载并设置手机的根证书

图8-1 安装手机证书

图8-2 提示代理地址和证书下载地址

图8-3 手机配置代理地址

图8-4 下载证书

图8-5 安装证书

图8-6 访问控制

图8-7 查看访问控制

图8-8 手机ip被允许

图8-9 抓取到手机数据报文

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“https代理”边界阅读