抓包工具之Charles(windows)
激活码: https://www.zzzmode.com/mytools/charles/
官方地址:https://www.charlesproxy.com/
PC端如何配置才能抓取到https请求:
1. 安装证书:在顶部工具栏中选择“help--Install Charles CA SSL Certificate”;

2. 然后会弹出证书信息,选择安装证书,接下来将证书存储改为:受信任的根证书颁发机构,接下来都点“下一步”;

.最后一步前可能会弹一个安全警告的弹窗,点“是”,最后完成;
注意点:
1) 存储位置为"本地计算机"
2) 证书存储的时候, 要选择"将所有的证书都放入下列存储"
3)选择证书存储"受信任的证书颁发机构"
否则会出现https无法正常抓取的问题
3. 修改charles的proxy settings:选择“Proxy--Proxy Settings”,弹出proxy设置选项卡,勾选“Enabling transparent HTTP proxying”;

4. 再选择“Proxy—SSL Proxy Settings”,勾选“Enable SSL Proxying”,在Location部分选择add,如下图所示,host中填“*”,port中填“*”,表示任务域名的数据;

5. 保存成功后,这时访问PC浏览器,再去抓取https的请求,就能正常查看里面的数据信息了。
手机端如何配置才能抓取到https请求:
1. 先打开Charles 的代理功能:在菜单栏上选择“Proxy -> Proxy Settings”,填入代理端口 8888,并且勾上 “Enable transparent HTTP proxying”;

2. 获取 Charles 运行的电脑的 IP :在Charles 的顶部菜单,点击“Help -> Local IP Address”,即可在弹出的对话框中看到 IP 地址;

3. 在手机上无线局域网配置中,选中所连的wifi,选择手动配置代理:服务器主机填写charles运行所在的电脑IP,端口号默认都填写8888,保存;这个时候只能抓取到手机端的http的请求,还需要以下设置才能抓到https请求;

4. 在Charles 的顶部菜单,点击“Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser”;

然后会出现一个弹窗,点击弹窗中“确定”;

5.打开手机浏览器,输入chls.pro/ssl,访问该地址会下载charles证书,将此证书安装到手机上;
6.此时用手机访问各请求时,会先在电脑运行的charles中弹出一个对话框请求确认连接,点击确认允许;

7.这样便可以在安卓手机端抓取https请求了。
8.如果是IOS手机,还需要在手机中开启证书信任:进入“设置—>通用—>关于本机—>证书信任设置”,开启刚才安装的charles证书即可。
重要设置项:
1. 安装证书
Help -> SSL Proxying -> Install Charles Root Certificate
2.设置https端口
菜单栏 Proxy -> SSL Proxying Settings 打开 SSL Proxying Settings配置面板,
因为HTTPS是走的 443端口,所以这里设置一个443端口,*代表匹配所有,意思为:代理所有域名的443端口
[使用]
1.请求转发 Tools > Map Remote
场景:例如在获取微信链接参数的时候, 可以在访问该链接的时候,变成访问本地的某个接口, 这样就可以将想要的数据保存到本地来使用
Tools > Map Remote 配置对应的远程服务于本地服务(可以使用flask搭建一个web服务来接收)

使用场景:
1. 将线上资源映射到本地开发服务器 www.com -> localhost,以此实现本地调试线上。
2.将线上服务调用的参数不用复制,粘贴到postman等工具上,在本地环境进行调试, 使用代理即可解决
2.Tools > Map Local
Map Local 工具能够将请求映射到本地文件,也就是将本地文件作为某个请求的返回。Map Local 和 Map Remote 相辅相成,一个映射到服务器,一个映射到本地文件。
如果说 Map Remote 是大面积覆盖,那么 Map Local 就是单点爆破。这对快速调试某个线上静态资源很方便。
比如把某个线上 js 文件下载到本地,修改修改,然后通过 Map Local 这个本地文件映射就可以直接看到效果进行验证。不必走完 CI,CD 这一套焦头烂额的等待了。
3.Tools > Rewrite
Rewrite 工具能够让你重写覆盖请求的任意部分,包括 request 和 response 的 header 和 body。
下面是一些使用场景:
- 重写 response header 实现 cors 跨域
- 重写 cookie 实现一些校验
- 重写 body 实现类似 Map Local 的效果
4.Tools > DNS Spoofing
DNS 欺骗工具可以将一个域名映射到一个 IP 地址下,和系统 hosts 文件的作用一样。
实际上,在 Map Remote 里配置 example.com -> 20.205.243.166 能实现相同的效果。
有了这个功能,我卸载了 hosts 管理软件。
5.Proxy > External Proxy
Charles 本身是一个代理,它还支持再配一层外部代理,通常是 VPN。请求会先过 Charles,再走外部代理。
例如,想要抓包的话需要开启 Charles 的 macOS Proxy,此时 Charles 会自动设置系统代理。
一般会遇到下载的证书并不能直接进行安装,这里写一下华为手机的安装流程:
1. charles中将证书保存在本地,保存时直接选择.cer格式,将证书拷贝到手机中(推荐)
Help > SSL Proxying > Save Charles Root Certificate

或者手机上fagnwen chls.pro/ssl进行下载, 并修改后缀为cer
2.找到证书并安装
设置 > 更多安全设置 > 加密和凭证 > 从存储设备安装 > CA证书 选择并安装即可
////////////////////////////////////////////////// 注册码-解除限制
一般安装成功之后的使用是试用版本, 打开过几分钟就需要关闭, 这里可以使用在线站点进行注册码的生成, 然后在 Help > Register Charles中填写相应的信息即可
https://www.zzzmode.com/mytools/charles/
更多参考:
抓包工具之Charles(windows)的更多相关文章
- 抓包工具之—charles碎言碎语
一.Charles常见使用场景: 1.Charles是跨平台的抓包工具,支持Windows,mac或Linux平台: 2.获取请求信息.测试接口时,若接口文档中的参数不清楚或没有接口文档时,可以通过抓 ...
- 【接口工具】接口抓包工具之Charles
上篇我们讲了Fiddler,Fiddler是用C#开发的,所以Fiddler不能在Mac系统中运行,没办法直接用Fiddler来截获MAC系统中的HTTP/HTTPS, Mac 用户怎么办呢? 1.F ...
- ubuntu使用抓包工具,charles
参考官网:https://www.charlesproxy.com/documentation/installation/apt-repository/ wget -q -O - https://ww ...
- Mac 下安装Fiddler抓包工具
需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...
- MAC下安装Fiddler抓包工具
需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...
- 腾讯出品的抓包工具Rythem
Mac下一直没有fiddler这样好用的抓包工具,Charles要收费,难免不爽,昨天调研国内项目的时候,看到腾讯开源了一款抓包工具Rythem,试用了一下,基本配置无问题,但是通配符方面不太搞的定. ...
- Http/Https抓包工具Charles最新版破解教程(Windows|Mac)
Charles介绍 Charles是一款强大的http/https抓包工具,可以抓取各种数据请求,查看请求的头信息,请求信息,返回信息等.本文主要介绍Charles的破解过程,包括Windows平台和 ...
- 抓包工具charles使用教程指南
0x01 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!下面来详细介绍下这款强大好用的 ...
- charles使用教程指南(抓包工具)
0x01 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!下面来详细介绍下这款强大好用的 ...
- Charles是Mac的Fiddler抓包工具
windows下面我们经常使用 Fiddler 抓包工具进行代理等一系列操作.然而,在 Mac 下的 Fiddler 勉强能运行,但是其挫的都不想说它了.今天看到朋友推荐这款 Charles Mac下 ...
随机推荐
- JavaScript中class的静态属性和静态方法
我们可以把一个方法赋值给类的函数本身,而不是赋给它的 "prototype" .这样的方法被称为 静态的(static). 例如这样: class Animal { static ...
- Google Maps Embed API & JavaScript API
前言 很多年前写过一篇 Google Map 谷歌地图, 这篇算是翻新版本. Google Map Registration Google Maps Platform 是整个 Google Map 的 ...
- Figma 学习笔记 – Constraints 约束
用途 Constraints 用于 responsive design, 子元素和父元素建立约束关系后, 当父元素 dimension 变换的时候, 子元素会做出相应的变化 (移动位置或 resize ...
- P1438 无聊的数列 题解
背景 看到题解都是差分,竟然还有建两颗线段树和二阶差分的大佬. 我感到不理解,很不理解. 题目正解 本题正解很明显就是:线段树 是的,你没有看错,就只有线段树. 很显然我们直接按照线段树板题写就可以了 ...
- USB-DFP UFP DRP模式
USB Type-C 接口支持三种模式:DFP(Downstream Facing Port).UFP(Upstream Facing Port)和 DRP(Dual Role Port).虽然这些术 ...
- 树形结构体按照 sort 进行排序先按照字母排序 然后按照数字排序
// 先按照字母排序 然后按照数字排序 function sortListByLetter(arr) { return arr.sort((a, b) => { if (isNaN(a.name ...
- 2. 说一下vue2和vue3的区别 ?
1. vue3 使用 proxy 替换Object.defineProperty 实现数据响应式 ,所以vue3 的性能得到了提升 : 2. vue3 使用组合式 API 替代了 vue2 中的选项式 ...
- 3.flask 源码解析:路由
目录 一.flask 源码解析:路由 1.1 构建路由规则 1.2 werkzeug 路由逻辑 1.3 flask 路由实现 1.4 match 实现 Flask 源码分析完整教程目录:https:/ ...
- python中队列deque的使用
队列,堆栈是程序开发中常用的两种数据存储模型.python中队列怎么运用呢?以下内容介绍了队列的使用和队列的函数. from collections import deque q = deque() ...
- 现在 Llama 具备视觉能力并可以在你的设备上运行 - 欢迎使用 Llama 3.2
Llama 3.2 来了!今天,我们欢迎 Llama 系列的下一个版本加入 Hugging Face.这次,我们很高兴与 Meta 合作发布多模态和小型模型.在 Hub 上提供了十个开源模型 (5 个 ...