Charles

Charles

一、抓包概述

1.抓包概念9

抓包是将网络传输发送与接受的数据包进行截获、重发、编辑、转存等操作,也用来检测网络安全等。

2.常见抓包工具

为什么学习Charles抓包?

1.能够使用Charles来分析前后端问题

2.能够使用Charles模拟弱网测试环境

3.能够使用Charles的断点构建异常的测试场景

什么是Charles

Charles中文名字青花瓷,是一款Http代理服务器和Http监视器,当移动端在无线网连接中按要求设置好代理服务器,使所有对网络的请求都经过Charles客户端来转发时,Charles可以监控这个客户端各个程序所有连接互联网的Http通信。

特点:跨平台、半免费

工作原理

截获真实客户端的HTTPS请求,伪装客户端向真实服务端发送HTTPS请求

接受真实服务器响应,用Charles自己的证书伪装服务端向真实客户端发送数据内容

Charles主要功能

支持HTTP/HTTPS代理

支持流量控制

支持接口并发请求

支持重发网络请求,方便后端调试

支持断点调试

支持修改网络请求参数

支持网络请求的截获并动态修改

支持模拟慢速网络

Charles组件介绍

Charles设置

代理设置

访问控制

2. Windows证书安装

3. Charles证书导出

1、打开charles

2、选择help-ssl proxying

3、save

4、选择存放路径以及证书名

4. charls证书导入

IE浏览器:设置 → Internet选项 → 内容 → 证书 → 导入 → 下一步 → 选择证书 → 选择所有证书都放入下列存储(P) → 浏览,选择“受信任的根证书颁发机构” → 下一步 → 完成。

chrome浏览器:设置 → 管理证书(安全) → 导入 → 下一步 → 选择证书 → 选择所有证书都放入下列存储(P) → 浏览,选择“受信任的根证书颁发机构” → 下一步 → 完成。

Chales HTTPS代理配置

证书安装之后发现还是乱码和unknown,需要配置代理

image.png

五、Charles常用功能

1. 过滤不必要的网络包

在抓取手机发送的请求时,有许多请求包是对图片等不需要关注的资源的请求,我们只想对指定目录服务器上发送的请求进行抓取,这时候就可以通过过滤网络包的方式实现。有两种实现方式:

1)选择Proxy->Recording Settings菜单,然后在include栏添加需要抓取包的指定服务器请求协议、地址、端口号,也可以在exclude栏添加不抓取包的地址。

include:能抓取到的

exclude:不能抓取到的

2)在主界面的中部的 Filter 栏中填入需要过滤出来的关键字。例如我们的服务器的地址是:http://blog.csdn.net, 那么只需要在 Filter 栏中填入 csdn 即可。

注意:通常情况下,我们使用方法一做一些临时性的封包过滤,使用方法二做一些经常性的封包过滤。

断点的作用:用来构建异常的测试场景

步骤

1.点击接口链接,选择”BreakPoints“

2.在浏览器刷新对应接口的页面

3.此时会自动跳转到Charles并显示出接口请求信息

4.点击”Edit Request“,点击请求信息,点击”Execute“

5.点击“Edit Response”

6.在数据格式兰中选择合适的显示格式,比如“json”

7.修改对应的数据,点击“Execute”

8.回到浏览器查看数据应该为修改之后的response的信息

方法二:

Proxy → Breakpoint settings...中手动新建/启用某个断点;

要求勾选enable breakpoints之后当下次再有该请求时,会自动进入断点模式

创建新断点:

模拟慢网速

为什么要做模拟慢网速

不是所有的地方网络都好,所以要模拟慢网速。主要用在App端,因为PC一般都是宽带联网,而App哪里都有可能去。比如,测试上厕所

压测服务器

依次点击tools—Repeat Advanced

选择好并发线程数和打压次数,点击ok就能进行对产品的GET和POST请求进行测试服务器并发处理的性能,当然这里只是简单的进行压测,并且只能对Charles抓到的http协议的请求进行重复并发,缺点就是如TCP类的抓不到的就不能了,算是个小小的缺陷吧。

模拟404

1.tools→blacklist

2、 允许启用黑名单功能,选择接口返回错误的形式(404 或者403),添加接口地址并保存

【blocking connection】 选项可以选择“drop connection”或者 “403 respose”.前者接口会直接返回404错误,后者接口返回403错误

3、 选中需要返回404/403的接口,点击【ok】

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、抓包概述 1. 抓包概念 抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安...
    A枭阅读 11,708评论 1 2
  • 一、抓包概述 1. 抓包概念 抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安...
    九樱MOL阅读 1,176评论 0 0
  • 一、抓包概述 1. 抓包概念 抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安...
    淅平阅读 1,729评论 0 0
  • 第十二、十三单元 Charles 一、抓包概述 1. 抓包概念 抓包是将网络传输发送与接收的数据包进行截获、重发、...
    e455c2732c37阅读 1,176评论 0 0
  • 一、抓包概述 1. 抓包概念 抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安...
    G_eebd阅读 3,237评论 0 0