ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

抓包工具-charles

2022-06-05 00:31:48  阅读:199  来源: 互联网

标签:Charles 证书 截取 charles 代理服务器 设置 工具 安装 抓包


一、简介

 

Charles是在Mac下常用的截取网络封包的工具,在测试服务器端的网络通讯,往往用它来截取网络封包来分析。Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取与分析。

 

 

除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。

 

 

Charles主要功能有:
1、截取 Http 和 Https 网络封包。
2、支持重发网络请求,方便后端调试。
3、支持修改网络请求参数。
4、支持网络请求的截获并动态修改。
5、支持模拟慢速网络。

 

 

二、安装

 

 

1、安装

Charles 的官方网站 https://www.charlesproxy.com/ 下载最新版的 Charles安装包,是一个dmg后缀的文件。打开后将Charles拖到Application 目录下即完成安装。

3、安装使用过程中遇到的问题

1)问题:安装完charles后,打开使用开始抓包,发现一使用charles抓包,浏览器就不能正常连接,显示【不是私密连接】。

2)解决方案:安装好charles后,要在mac上安装证书,并且在钥匙串中将证书改为【信任】:

 

三、基本配置

1、将 Charles 设置成系统代理

Charles是通过将自己设置成代理服务器来完成封包截取的,所以使用Charles第一步就是将其设置成系统的代理服务器。选择菜单中的 “Proxy” –> “Mac OS X Proxy” 来将 Charles 设置成系统代理。

【note】Chrome 和 Firefox 浏览器默认并不使用系统的代理服务器设置,而 Charles 是通过将自己设置成代理服务器来完成封包截取的,所以在默认情况下无法截取 Chrome 和 Firefox 浏览器的网络通讯内容。如果需要截取的话,在 Chrome 中设置成使用系统的代理服务器设置即可,或者直接将代理服务器设置成 127.0.0.1:8888 也可达到相同效果

2、Charles抓包配置

Charles 通常用来截取本地上的网络封包,但是当我们需要时,我们也可以用来截取其它设备上的网络请求。

【前提】手机 和 Mac 是在同一个网段下

 

 

<1>打开Charles 的代理功能:菜单栏上选择 “Proxy”–>“Proxy Settings”,填入代理端口 8888(也可以自定义),并且勾上 “Enable transparent HTTP proxying”。

 

 


<2>获取mac的Ip地址。Charles 的顶部菜单的 “Help”->”Local IP Address”,即可在弹出的对话框中看到 IP 地址。

 

 

<3>手机wifi设置代理,「HTTP 代理」一项,我们将其切换成手动,然后填上 Charles 运行所在的电脑的 IP,以及端口号 8888,【即:IP为第二步的IP,Port为第一步中设置的Port】

 

<4>设置好之后,我们打开 手机上的任意需要网络通讯的程序,就可以看到 Charles 弹出 手机 请求连接的确认菜单,点击 “Allow” 即可完成设置。

 

5、https抓包

如果需要截取分析 Https 协议相关的内容。则需要安装 Charles 的 CA 证书。

【安装证书】具体步骤如下:

 

<1>电脑上安装SSL证书
charles - help - SSL Proxying,点击Install Charles Root Certificate 然后进入到密钥,将证书设置为可信任。

 

<2>手机上安装SSL证书

step1:charles - help - SSL Proxying,点击Install Charles Root Certificate on a Mobile Device or Remote Browser

step2:浏览器输入【chls.pro/ssl】 下载证书(手机连接代理的前提下)【安卓手机安装证书: 浏览器输入:http://www.charlesproxy.com/getssl 安装 Charles SSL 证书】


(安卓手机安装证书:在设置- 设备安全-从存储设备安全证书 ,找到证书的下载路径,点击进行安装。如果要删除之前安装的证书,在设置- (更多)- 安全,找到信任的证书,进行移除操作)

注意: 如果手机上下载证书后,找不到证书,可能是因为证书是pem后缀的,需要将pem改成crt

1):当iOS打不开【chls.pro/ssl】网址时,按如下操作:【charles】->【proxy】->【Proxies】:

​。再次打开手机浏览器即可。

2)下载安装好证书以后,iPhone信任证书:【设置】->【通用】->【关于本机】->【证书信任设置】->将证书设置为信任。

 <3>设置支持https请求:Proxy - SSL Proxying Settings,点击add,进行如下设置:

 

 

 

 

 

标签:Charles,证书,截取,charles,代理服务器,设置,工具,安装,抓包
来源: https://www.cnblogs.com/little-redhat/p/16343171.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有