前提:charles的说明

Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用。安装Charles的时候要先装好Java环境。

Charles的主要功能:

(1)截取Http 和 Https 网络数据包。

(2)支持重发网络请求,方便后端调试。

(3)支持修改网络请求参数。

(4)支持网络请求的截获并动态修改。

(5)支持模拟慢速网络。

下面主要介绍Charles的如何抓取HTTPS的数据请求。

第一部分:下载安卓Charles包

1、下载Charles包,地址:https://www.charlesproxy.com/latest-release/download.do

2、根据自己的系统版本选择对应的下载安装包到本地。

3、下载完成后,直接傻瓜式安装即可

4、安装完成后可以通过https://www.zzzmode.com/mytools/charles/,进行Charles的破解(目前只支持到了V4.5.1 版本)

第二部分:设置Windows代理&设置APP代理

一、设置Windows的代理(OS系统基本一致)

1、想通过Charles抓取Windows电脑中的HTTPS包非常的简单,首先打开Charles,界面如下:

2、选择help>ssl proxying>install charles root Certificate 安装证书,

选择安装证书选项后弹出安装证书的弹框,如下图:

点击安装证书,选择本地计算机,点击下一步,进入如下界面:

选择第二个选项,然后选择浏览>受信任的根证书办法机构,点击确定>下一步>完成即可配置成功。

3、选择proxy>Windows proxy,然后打开百度浏览器,发现可以正常抓取到HTTPS的包了。

二、设置APP的代理

1、打开Charles抓包工具,界面如上;

2、选择Proxy | Proxy Settings,弹出proxy设置选项卡,勾选Enabling transparent HTTP proxying

3、配置APP端代理

3.1 首先确定PC电脑的地址,运行 >cmd>ipconfig,如下图:

3.2 以华为手机为例,选择设置>无线和网络>WLAN,选择自己的网络长按,如下图:

3.3 选择修改网络,进入下一页面,勾选高级选项>代理设置为手动,并在下边输入PC的IP地址和端口号,填写完成后选择保存即可,如下图:

4、选择help>SSL Proxying>install charles root Certificate On a mobile Device OR Remote Browser,如下图:

给出弹框,在APP浏览器中输入弹框中的地址,进行证书的下载安装。

5、APP浏览器中输入chls.pro/ssl 地址进行证书的下载。

6、证书下载完成后如果是.cer结尾的则可以直接进行证书的安装,如果是.pem的则需要手动修改一下文件的后缀名在安装

7、证书安装完成后,在通过APP访问www.baidu.com,发现我们可以正常从APP端抓取到HTTPS的数据包。

=====================================================

遇到的问题:

1、Charles配置完成后,在APP端配置完代理后,输入证书下载地址,始终无法下载证书,提示网络错误

解决办法:关闭Windows的防火墙即可。

关闭防火墙办法:

1、进入控制面板\系统和安全\安全和维护\选择高级设置

2、打开如下图所示弹框,选择防火墙属性设置

3、然后将下图三个选项的入站链接全部标记未允许即可。

Charles抓包工具的使用(一)的更多相关文章

  1. Charles抓包工具使用

    Charles抓包工具使用和进行接口数据模拟 打开软件,选择Tools  >>  Map Local  >>  勾选enable  >>  add  >> ...

  2. Charles 抓包工具(新猿旺学习总结)

    Charles 抓包工具安装机操作 1.Charles 抓包工具是代理服务器工具,可以拦截数据,进行更改,返回数据,以实现前端后台的请求和响应数据的测试2.Charles 菜单介绍 Charles抓包 ...

  3. Charles 抓包工具安装和采坑记录

    Charles 抓包工具安装和采坑记录 网络抓包是解决网络问题的第一步,也是网络分析的基础.网络出现问题,第一步肯定是通过抓包工具进行路径分析,看哪一步出现异常.做网络爬虫,第一步就是通过抓包工具对目 ...

  4. Charles抓包工具的用途及应用

    Charles抓包工具的用途: 排查问题,测试异常情况 注意:Charles不能直接抓https请求的包,需要用https://www.jianshu.com/p/ec0a38d9a8cf这个方法去配 ...

  5. charles抓包工具的中文乱码解决方法

    charles是 MAC上最好用的抓包工具.charles 网上的参考文档已经很多,我就不再赘述啦.只是说说我在安装过程遇到的问题和解决方法,仅供参考. charles抓包的数据中的中文内容显示乱码, ...

  6. charles抓包工具的使用:概述

    一. 什么是包 用户和后台客户端之间的请求数据,都是以包的形式来传递的,具体要深究,可以去看看这方面的网络知识 二. 为何要抓包 1) 可以用来分析网络流量 2) 可以用来破译抓来的数据,比如密码之类 ...

  7. charles抓包工具使用指南

    前言 移动APP抓包 PC端抓包 查看模式 其他功能 问题汇总 1. 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓 ...

  8. Ubuntu 16.04下安装Charles抓包工具

    Charles是一个跨平台的抓包工具,虽然没有Fiddler做的这么完美,但是也算是另一个选择. 下载: https://www.charlesproxy.com/download/ 注册: http ...

  9. charles抓包工具分享

    今天,给大组内QA做了一次分享,主要面向移动端测试,介绍了我平时在测试工作中用到的功能,大家都积极响应,现场搭环境,现场操作,现场提问解答,最后大家都成功的利用起来了,感觉很有成就感.下面介绍我今天分 ...

随机推荐

  1. 005-做题:使用 Python 生成 200 个激活码

    题目:使用 Python 生成 200 个不重复的激活码 编写思路# 激活码一般是由26个大写字母和10个数字任意组合而成# 长度为12位或者16位的居多激活码# 一个激活码里的字符是可以重复的,而且 ...

  2. vmware上安装centos7虚拟机

    1.1 Linux 的安装 安 装 采 用 在 虚 拟 机 中 安 装 , 以 方 便 不 同 班 级 授 课 时 , 需 要 重 复 安装的情况. 1.1.1 配置虚拟机 1. 在 VMware W ...

  3. js中对于数组的操作

    let myArray=[11,22,33]; console.log('原数组:',myArray); myArray.push(44,55); console.log('用push在数组后面插入元 ...

  4. 品Spring:关于@Scheduled定时任务的思考与探索,结果尴尬了

    非Spring风格的代码与Spring的结合 现在的开发都是基于Spring的,所有的依赖都有Spring管理,这没有问题. 但是要突然写一些非Spring风格的代码时,可能会很不习惯,如果还要和Sp ...

  5. docker服务在Mac上的启动与使用

    在mac上打开安装的docker软件就可以启动docker服务了 点击顶部状态栏中鲸鱼图标会弹出操作菜单,显示着服务的状态,如下图所示: 只有在docker服务启动了之后,才可以在终端使用docker ...

  6. Spring5源码解析5-ConfigurationClassPostProcessor (上)

    接上回,我们讲到了refresh()方法中的invokeBeanFactoryPostProcessors(beanFactory)方法主要在执行BeanFactoryPostProcessor和其子 ...

  7. e课表项目第二次冲刺周期第八天

    昨天完成了什么? 昨天,我们组商量讨论了二层界面的设计,添加课程所需要的信息大概有:课程名称.教室.任课教师.上课时间.类型(单周.双周.单双周)以及备注等等.然后,我们通过界面的UI设计,让我们软件 ...

  8. Flutter 的setState与FutureBuilder及EasyRefresh示例

    用setState改变状态 class CpwsList extends StatefulWidget { _CpwsListState createState() => _CpwsListSt ...

  9. js二次作业

    task 1:完成省城市的三级联动(包括湖南省),附代码和效果图.<!DOCTYPE html> <html> <head> <title>完成省城市的 ...

  10. 九、Executor框架

    Executor框架 ​ 我们知道线程池就是线程的集合,线程池集中管理线程,以实现线程的重用,降低资源消耗,提高响应速度等.线程用于执行异步任务,单个的线程既是工作单元也是执行机制,从JDK1.5开始 ...