charles 抓包工具

介绍

HTTP的代理工具,支持HTTP和HTTPS代理;支持流量控制(弱网环境测试);支持接口并发;支持重发网络请求;支持断点调试;支持按域名、接口查看报文;支持反向代理;可选择网络类型;可解析AMF协议。

安装

  1. 下载:www.charlesproxy.com/download/
  2. 注册:www.zzzmode.com/mytools/cha...
    • Registered Name:任意输入,点击生成
    • help -> register charles

界面介绍

  1. 主导航栏介绍

2. 请求栏介绍

  • Structure:按照请求域名显示
  • Sequence:按照接口请求时间显示
  1. 请求数据栏介绍
  • overview:请求接口概览信息,比如请求协议、时间、大小。
  • contents:请求内容信息和以不同形式展示的响应内容。

代理配置

访问控制配置

client代理设置

  1. MacOS代理设置
  • 查看charles服务器的ip和端口
  • 设置Http和Https请求时需要转发的代理服务器端口和地址
  1. MacOS快捷代理设置
  • 场景:MacOS客户端和运行的Charles软件是同一台电脑。
  • 操作步骤:打开Charles工具,选择Proxy菜单中的MacOS Proxy。
  1. IOS手机代理配置

https的抓包

charles会拦截设备和服务器之间的HTTPS请求,并在中间插入自己的SSL证书。这样,Charles就可以解密加密的HTTPS通信,并查看其中的内容,然后再重新加密并转发给目标服务器,整个过程对于用户和服务器都是透明的。

但是,为了成功地实施这种中间人攻击,Charles需要在你的设备上安装其自己的根证书。这个根证书充当了一个信任机构,用于签署和验证由Charles生成的SSL证书。

安装Charles的根证书后,你的设备就会信任由Charles生成的SSL证书,这样Charles就能够成功地将自己伪装成目标服务器,并与你的设备进行安全通信,从而拦截和解密HTTPS通信。

  1. 安装证书
  • 打开charles,选择 help->ssl proxy->install charles root certificate

如果MacOS中遇到钥匙串中无法找到Charles证书,并且reset charles root certificate依然无法找到可以尝试手动安装根证书:

  • 查找证书:
sh 复制代码
ll /Library/Keychains/System.keychain /Users/cuiqiaoqiao/Library/Application\ Support/Charles/ca/Charles-proxy-ssl-proxying-certificate.cer
  • 安装证书:
sh 复制代码
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain /Users/zhuoya/Library/Application\ Support/Charles/ca/Charles-proxy-ssl-proxying-certificate.cer
  1. charles配置https proxy
    • 菜单proxy->ssl proxying setting
    • 勾选enable ssl proxying
    • 添加Host为*,端口为443

IOS 手机证书配置

  • 步骤五:再次回到"通用"页面,选择"关于本机"
  • 步骤六:点击"证书信任设置",启用Charles Proxy CA 证书并确认

Charles流量配置

可以模拟2G、3G、4G网络环境,测试弱网;

Charles breakpoints

可以在请求前编辑请求内容

可以在获取请求结果后编辑响应内容

相关推荐
IT_陈寒1 小时前
Vue的响应式把我坑惨了,原来问题出在这
前端·人工智能·后端
shark22222221 小时前
能懂!基于Springboot的用户增删查改(三层设计模式)
spring boot·后端·设计模式
IGAn CTOU2 小时前
王炸级更新!Spring Boot 3.4 正式发布,新特性真香!
java·spring boot·后端
柯西劝我别收敛2 小时前
Koordinator-Scheduler 调度器源码解析
后端·云原生
tycooncool2 小时前
Spring中的IOC详解
java·后端·spring
303782 小时前
消息推送削峰落地方案
后端
爱敲代码的小黄3 小时前
我重新梳理了一遍 RAG,终于明白它不只是接个向量库
后端·面试·agent
亦暖筑序3 小时前
Spring AI Alibaba 报错合集:我踩过的那些坑
java·后端
石榴树下的七彩鱼3 小时前
OCR 识别不准确怎么办?模糊 / 倾斜 / 反光图片优化实战(附完整解决方案 + 代码示例)
图像处理·人工智能·后端·ocr·api·文字识别·图片识别
卜夋5 小时前
Rust 学习笔记 - Day 6: 引用与借用
后端·rust