一、安装:

1、建议安装使用最新版,官方下载地址 https://www.charlesproxy.com/download
2、安装完成之后,需要破解:
破解方法

  1. 打开破解地址:https://www.zzzmode.com/mytools/charles/
  2. 输入RegisterName(此名称随意,用于显示 Registered to xxx),点击生成计算出注册码,打开Charles输入注册码即可

二、配置环境

开启Charles http代理

  1. 设置Charles代理。如果只是抓取手机端APP网络请求,可以将此前设置的电脑代理勾去掉(每次启动Charles都是默认开启的)

  2. 激活http代理功能。进入Proxy->Proxy Setting,设置http proxy代理端口:8888(一般默认设置为这个)

设置SSL代理:
Proxy–> SSL Proxying Setting–> Enable SSL Proxying -->Add。https访问的端口号都是443。在弹出的表单中Host填写域名,Port填443,*表示所有域名‘

电脑防火墙设置:

设置允许Charles通过防火墙。

三、Android 7.0 之后抓取HTTPS数据出现unknown 和证书无效的解决方案

使用抓包软件(以 Charles 为例)抓取APP的 https
请求时,Android和Charles都正确安装了证书却出现抓包失败,报错:

Client SSL handshake failed: An unknown issue occurred processing the
certificate (certificate_unknown) 原因: Android7.0 之后默认不信任用户添加到系统的CA证书

解决办法:
1、将抓包软件的证书安装成系统证书(手机需要ROOT)
系统证书目录:/system/etc/security/cacerts/
其中的每个证书的命名规则如下:

<Certificate_Hash>.<Number>

文件名是一个Hash值,而后缀是一个数字。
文件名可以用下面的命令计算出来:

openssl x509 -subject_hash_old -in <Certificate_File>

后缀名的数字是为了防止文件名冲突的,比如如果两个证书算出的Hash值是一样的话,那么一个证书的后缀名数字可以设置成0,而另一个证书的后缀名数字可以设置成1

2、下载Charles证书到电脑上,文件格式为.pem文件

Linux系统下可以之间使用openssl 命令
window系统需要使用工具才能执行openssl命令

下载之后之间解压,然后配置一下环境变量path就可以用了。
1、打开cmd命令行
输入命令: openssl x509 -subject_hash_old -in C:\Users\u\Desktop.pem

执行完之后得到证书的Hash

然后把证书名由Charles.pem更换为c2237ceb.0

把证书安装到手机系统证书目录下(手机需要root)
执行以下adb命令:

adb root
adb disable-verity
adb reboot
adb root
adb remount
adb push C:\Users\u\Desktop\c2237ceb.0   /system/etc/security/cacerts/

打开手机设置——密码与安全——系统安全——加密与凭据——信任的凭据——系统栏

滑到最底下,倒数第二个,有charles证书,代表证书安装至系统证书成功。

四、手机端Wifi添加代理

手机与电脑连接同一网段的wifi,进入wifi连接设置,设置代理为手动,填写主机名与端口号,
主机名可以打开charles,获取IP地址,端口号为第二步中设置的端口号。


完成以上操作后,charles就可正常获取到手机app的所有接口了

踩坑无数后的最全的charles抓包app安装教程相关推荐

  1. 踩坑无数后,极速安装TensorFlow2.1(CPU版)和OpenCV

    关于安装Anaconda和Pycharm / VSCode的教程很多,在这里就不赘述了,我们直接进入主题,TensorFlow2.X系列版本一经发行就备受好评,但是一直没有机会安装,最近想跟着中国大学 ...

  2. 【k8s】记踩坑无数后的kubernetes二进制安装详细步骤

    前言:其实远在8月份的时候就尝试过二进制安装kubernetes,结果当时遇到的问题很多,奈何自己知识面也不够,所以最后不了了之.最近时间稍微比较宽裕,就再次重振旗鼓,重新开始安装,没想到整个过程还蛮 ...

  3. 零基础物联网开发,踩坑无数,得到这份宝典 | 原力计划

    作者 | Haor.L 责编 | 王晓曼 出品 | CSDN博客 笔者最近参加了校内的一场物联网开发竞赛,从零开始,踩坑无数,感觉很多时候事情都不像预料的一样发展,离开了美好的IDE,太多事情要在板子 ...

  4. android usb没有读写节点,2019踩坑无数含泪写下最新教程系列(三)树莓派挂载android(树莓派通过usb读取手机里面档案)...

    2019踩坑无数含泪写下最新教程系列(三)树莓派挂载android(树莓派通过usb读取手机里面档案) STEP1: Install packages Install support for MTP: ...

  5. android phone电脑驱动下载,全机型Android Phone驱动及安装教程(XP,Vista,Win7).pdf

    全机型Android Phone驱动及安装教程(XP,Vista,Win7) HTC Android( ) Android Phone 安卓 全机型 驱动及安 装教程(XP,Vista,Win7 ) ...

  6. 我走过的Charles抓包中意想不到的坑

    Charles抓包好多坑 写在前面 SSLCharles抓包报错 注意 写在前面 测试实习,前几天在写测试用例,这两天开始使用Charles抓包测试 SSLCharles抓包报错 我的是mac电脑 首 ...

  7. 最全总结 | Android 系统抓包喂饭教程!

    点击上方 "AirPython",选择 "加为星标" 第一时间关注 Python 原创干货! 1. 前言 大家好,我是安果! 在编写爬虫前,我们都需要对目标应用 ...

  8. H5跳转微信小程序-成功案例(VUE)(踩坑无数)

    这里写自定义目录标题 准备工作 根据官方提供的资料需准备以下几点: 1.已认证的服务号 2.绑定JS接口安全域名 (在微信公众平台设置) 3.IP白名单 (在微信公众平台设置) 4.将小程序和H5公众 ...

  9. 肝了三天,整了一份全网最全(中文) tcpdump 抓包指南

    今天要给大家介绍的一个 Unix 下的一个 网络数据采集分析工具,也就是我们常说的抓包工具. 与它功能类似的工具有 wireshark ,不同的是,wireshark 有图形化界面,而 tcpdump ...

最新文章

  1. Mysql 的 聚簇索引和二级索引
  2. 机器学习-特征工程中的数据预处理
  3. Python __slots__限制动态添加变量
  4. 用Python实现二叉树的遍历
  5. accsess转成mysql语句_轻松教你SQL转ACCESS
  6. Java中如何判断某天是星期几
  7. JDK8 Stream 操作
  8. Codeforces 432D Prefixes and Suffixes(KMP+dp)
  9. mediarecorder路径设置为localsocket_PR学习之旅:pr怎么才能定位和修改视频保存路径,操作很简单...
  10. python通过函数类属性_函数作为类属性的赋值如何成为Python中的一个方法?
  11. sql oltp_内存中的OLTP系列– SQL Server 2014上的数据迁移指南过程
  12. Struts框架的核心业务
  13. map-based exploration of intrinsic shape differences and variability
  14. PCL之常用开源数据集汇总
  15. Salesforce 知识点记录(JSZip在lighting中使用时遇到的坑)
  16. 关于百度有啊的几点看法
  17. confusing uv
  18. 小程序苹果手机底部出现横杠处理
  19. Swing实现动画效果(实现Loding动画)【转载】
  20. 十问业务中台和我的答案

热门文章

  1. RabbitMQ原理及集群的深入剖析
  2. Windows7和Windows2008R2的比较
  3. 不少于三千字的论文应该包括对部编教材中“语文要素”在小学课堂中的落实策略的深入研究以及相关的论述。...
  4. 51NOD 1548 欧姆诺姆和糖果
  5. 诰全国散户书(带头大哥777的博客归隐别文)
  6. 新站发布——寻爱交友网
  7. ts流分析软件TS Expert
  8. 【鬼脚七经典电商思路】淘宝卖家的竞争力(1)
  9. .NET 云原生架构师训练营(模块二 基础巩固 RabbitMQ HelloWorld)--学习笔记
  10. matlab确定灰度阈值T,基于阈值的灰度图像提取法