抓包神器之Charles

发表于:2019-5-17 11:43

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:王小木    来源:简书

分享:
  一、简介
  抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。比较常用的抓包工具Fiddler ,但是由于 Fiddle 使用 C# 语言开发的,不支持 Mac OS 系统,今天给大家推荐一款Mac平台下的抓包申请Charles,Charles是使用 Java 语言开发的,跨平台,支持各个系统下的设备使用。
  二、安装及破解
  2.1、安装:官网地址http://www.charlesproxy.com/,直接下载安装即可,过程比较简单。
  2.2、破解:官方版本只支持免费使用30天,可通过替换安装包内容中的 charles.jar 文件进行破解。
  在线生成 charles.jar :https://www.zzzmode.com/mytools/charles/
  三、界面介绍
  3.1、工具导航栏
  
  3.2、主界面视图
  
  Structure: 此视图将网络请求按访问的域名分类。
  Sequence: 此视图将网络请求按访问的时间排序。
  Filter:请求多的时候会看不过来,Charles 提供了一个简单的 Filter 功能,可以输入关键字来快速筛选出 URL 中带指定关键字的网络
  四、抓包
  4.1、配置:打开Charles,点击上方菜单栏-->proxy,勾选macOS Proxy,此时已经可以监听PC端的一切网络连接及流量监控。
  4.2、访问需要抓包的链接,开始抓取数据。
 
  五、修改请求和返回报文
  5.1、首先开启断点模式,在Charles的面板上方将断点的图标点亮
 
  5.2、设置断点,选中要修改的请求-->右键-->BreakPoints (左面出现对勾表示设置成功),设置完成后,Charles再次抓取到该请求时会自动进入到调试模式。
  5.3、进入调试模式后,点击Edit Request可以修改请求报文,点击Execute进行下一步(如不修改,直接点击Execute进行下一步)
 
  5.4、请求报文发送成功后,Charles会拦截服务器返回的数据,这里可以点击Edit Response修改返回数据,点击Execute进行下一步(如不修改,直接点击Execute进行下一步)
 
  六、模拟弱网
  6.1、点击上方菜单栏-->Proxy-->Throttling Settings,打开Throttling Settings弹窗。
  6.2、勾选Enable Throttling,开启限网功能。
 
  6.3、如果只想对特定地址的请求进行弱网测试,,勾选Only for selected hosts,添加请求地址的信息。
  6.4、在 Throttle Preset 下选择网络类型即可,具体设置可以根据实际情况自行设置。
 
  6.5、也可以自定义网络设置。
  
  配置参数解析:
  Bandwidth :带宽,即上行、下行数据传输速度。
  Utilisation :带宽可用率,大部分modern是100%。
  Round-trip latency :第一个请求的时延,单位是ms。
  MTU :最大传输单元,即TCP包的最大size,可以更真实模拟TCP层,每次传输的分包情况。
  Releability :指连接的可靠性。这里指的是10kb的可靠率。用于模拟网络不稳定。
  Stability : 连接稳定性,也会影响带宽可用性。用于模拟移动网络,移动网络连接一般不可靠。
  七、解决乱码问题
  在使用过程中,遇到乱码情况,在网上找解决方案,走了一些弯路,把最终解决方案整理如下。
  7.1、上方菜单栏-->Help -->SSL Proxying-->Install Charles Root Certifica,进入钥匙串访问页面。
 
  7.2、双击该行,进入下图:
  7.3、点击“信任“,“加密套接字协议层(SSL)”一栏选择始终信任,关闭保存即可。
  
  7.4、再次点击上方菜单栏 -->Proxy -->SSL Proxy Settings -->Add,维护Location信息,Host输入*(代表所有网站),Port输入443,点击ok即解决了乱码问题。

      上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号