激活码:  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)的更多相关文章

  1. 抓包工具之—charles碎言碎语

    一.Charles常见使用场景: 1.Charles是跨平台的抓包工具,支持Windows,mac或Linux平台: 2.获取请求信息.测试接口时,若接口文档中的参数不清楚或没有接口文档时,可以通过抓 ...

  2. 【接口工具】接口抓包工具之Charles

    上篇我们讲了Fiddler,Fiddler是用C#开发的,所以Fiddler不能在Mac系统中运行,没办法直接用Fiddler来截获MAC系统中的HTTP/HTTPS, Mac 用户怎么办呢? 1.F ...

  3. ubuntu使用抓包工具,charles

    参考官网:https://www.charlesproxy.com/documentation/installation/apt-repository/ wget -q -O - https://ww ...

  4. Mac 下安装Fiddler抓包工具

    需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...

  5. MAC下安装Fiddler抓包工具

    需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...

  6. 腾讯出品的抓包工具Rythem

    Mac下一直没有fiddler这样好用的抓包工具,Charles要收费,难免不爽,昨天调研国内项目的时候,看到腾讯开源了一款抓包工具Rythem,试用了一下,基本配置无问题,但是通配符方面不太搞的定. ...

  7. Http/Https抓包工具Charles最新版破解教程(Windows|Mac)

    Charles介绍 Charles是一款强大的http/https抓包工具,可以抓取各种数据请求,查看请求的头信息,请求信息,返回信息等.本文主要介绍Charles的破解过程,包括Windows平台和 ...

  8. 抓包工具charles使用教程指南

    0x01 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!下面来详细介绍下这款强大好用的 ...

  9. charles使用教程指南(抓包工具)

    0x01 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!下面来详细介绍下这款强大好用的 ...

  10. Charles是Mac的Fiddler抓包工具

    windows下面我们经常使用 Fiddler 抓包工具进行代理等一系列操作.然而,在 Mac 下的 Fiddler 勉强能运行,但是其挫的都不想说它了.今天看到朋友推荐这款 Charles Mac下 ...

随机推荐

  1. SpringBoot定时任务实现数据同步

    业务的需求是,通过中台调用api接口获得,设备数据,要求现实设备数据的同步. 方案一:通过轮询接口的方式执行 pullData() 方法实现数据同步 该方式的原理是先清空之前的所有数据,然后重新插入通 ...

  2. 一次Java性能调优实践【代码+JVM 性能提升70%】

    这是我第一次对系统进行调优,涉及代码和JVM层面的调优.如果你能看到最后的话,或许会对你日常的开发有帮助,可以避免像我一样,犯一些低级别的错误.本次调优的代码是埋点系统中的报表分析功能,小公司,开发结 ...

  3. 使用 nuxi init 创建全新 Nuxt 项目

    title: 使用 nuxi init 创建全新 Nuxt 项目 date: 2024/9/6 updated: 2024/9/6 author: cmdragon excerpt: 摘要:本文介绍了 ...

  4. EF Core – 7.0 New Features

    前言 这篇不会细谈功能, 只是一个总链接. 参考 Docs – What's New in EF Core 7.0 Breaking Change 参考: Docs – Breaking change ...

  5. Java!!冲

    开始学习Java!!!

  6. 借助 Flutter 顺畅地开发多平台应用

    Flutter 已于近期发布了 Flutter 2,Flutter 和 Dart 的产品总监 Tim Sneath 在 2021 年三月上旬举办的 Flutter Engage 活动中表示,Flutt ...

  7. socket close和shutdown的区别,TIME_WAIT和CLOSE_WAIT

    TCP主动关闭连接 appl: close(), --> FIN FIN_WAIT_1 //主动关闭socket方,调用close关闭socket,发FIN               < ...

  8. Java日期时间API系列20-----Jdk8中java.time包中的新的日期时间API类,ZoneId时区ID大全等。

    Java日期时间API系列19-----Jdk8中java.time包中的新的日期时间API类,ZonedDateTime与ZoneId和LocalDateTime的关系,ZonedDateTime格 ...

  9. 墨天轮最受DBA欢迎的数据库技术文档-监控篇

    好久不见,<墨天轮最受欢迎的技术文档>系列文章回归啦!本期主题数据库监控篇,希望能够帮助到大家!此外,为感谢大家支持,原文文末也给大家带来了返场福利,欢迎大家进入原文参与~ 数据库监控是许 ...

  10. 39. 关于 diff 算法

    diff 算法是vue渲染列表数据的时候,把新的 Vnode 和旧的 Vnode 比较,通过 key 值的对应,变化的标签就更新视图,不变的就复用 :