Charles 抓包工具安装和采坑记录
Charles 抓包工具安装和采坑记录
网络抓包是解决网络问题的第一步,也是网络分析的基础。网络出现问题,第一步肯定是通过抓包工具进行路径分析,看哪一步出现异常。做网络爬虫,第一步就是通过抓包工具对目标网站进行分析,应对各种反爬策略。不会使用抓包工具的网络分析员等于是黑夜里找针,就算找到了,也是凭运气。网络抓包工具比较主流的有 Fiddler,Charles,WireShark,MITMProxy 等等。
Fiddler 主要用于 Windows 平台,配置简单,主要用于 HTTP 和 HTTPS 的分析。如果电脑主要用 Win 系统,只需要简单的分析 HTTP 请求,Fiddler 是首选。不过 Fiddler 在 Win7 平台上根证书安装总出现问题。
Charles 主要用于 Mac,现在也有 windows 版本了,界面雅观漂亮。由于 Fiddler 一直安装有问题,现在我主要用 Charles。Charles 是收费软件。
WireShark 操作起来比较复杂,但是功能强大很多。
MITMProxy 主要用于 linux 平台,图形界面和命令行都有。
本文主要介绍 charles 的安装和遇到的坑。
安装根证书
安装好软件以后,先需要下载根证书。根证书主要用于 HTTPS 请求分析,如果没有这个需求,可以不用安装,不过现在绝大多数的网站都启用了 HTTPS,可以说是必须要装了。
点击 help › ssl proxy › install certificate;
软件端的证书先称为服务端证书吧,对应的是客户端证书。

客户端安装证书
客户端证书主要是浏览器,手机等使用网络的设备,抓包就是抓这些设备的包。
先设置客户端代理,打开手机的 Wifi 设置,在手工代理里输入服务端的 IP 和 代理端口,比如 charles 安装在 IP 为 192.168.1.125 的电脑上,代理端口可以在软件彩带的 Proxy - Prxoy Setting 里设置,默认为 8888。
配置好代理以后,浏览器输入 chls.pro/ssl 下载和安装客户端证书。输入的时候 charles 软件必须打开,部分安卓机器的浏览器无法读取证书内容,会安装不上,可以换用 UC 等其他浏览器尝试。
下载以后进入手机的证书安装去安装证书,每个手机的路径不一样,需要自己找。
在 iPhone 下,需要进入设置 - 通用 - 关于本机 - 证书信任设置 - 启用完全信任。这一步非常重要,如果没有配置,很有可能导致无法抓包。
部分安卓机(小米)在配置完以后可能仍然会出现无法信任根证书的问题,这可能是手机厂商做的限制,现在还没有找到原因。

SSL 设置
charles 有一个白名单的机制,需要将目标网站的 Host 添加到白名单中才能抓取到 HTTPS,否则会报 Unknow Host 错误,如果看到这个错误,去 Proxy - SSL Proxy Setting 配置就可以了。比如配置所有 Host 的 443 端口:*:443

使用
配置完成以后,只需要在手机上使用浏览器或者 APP,浏览的网页对应的 URL 就会显示在 charles 的面板上了。可以用来分析请求,修改请求和响应,重复访问,压力测试等。
总结
使用 charles 最好是使用 iPhone 抓包,配置尤其要注意启用证书完全信任,否则 HTTPS 会抓不到包。安卓机系统小米无法使用,不知道其他人和其他系统如何。
更多原创文章我会第一时间发布在公众号:wang_little_yong ,欢迎关注。

Charles 抓包工具安装和采坑记录的更多相关文章
- Charles抓包工具安装与配置
在实际开发中,我们需要时常抓取线上的请求及数据,甚至是请求的html文档,js,css等静态文件来进行调试.在这里,我使用charles来进行以上操作.但是呢,charles需要进行一系列配置才能达到 ...
- Charles抓包工具的使用(一)
前提:charles的说明 Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的.该软件是用Java写的,能够在W ...
- Charles抓包工具使用
Charles抓包工具使用和进行接口数据模拟 打开软件,选择Tools >> Map Local >> 勾选enable >> add >> ...
- Charles 抓包工具(新猿旺学习总结)
Charles 抓包工具安装机操作 1.Charles 抓包工具是代理服务器工具,可以拦截数据,进行更改,返回数据,以实现前端后台的请求和响应数据的测试2.Charles 菜单介绍 Charles抓包 ...
- Fiddler4入门--手机抓包工具安装和使用说明
Fiddler4入门--手机抓包工具安装和使用说明.电脑最好是笔记本连同一个wifi,这样能和手机保持统一局域网内. 很多区块链dapp项目方风控做的很差,利用fiddler抓包分析找一些漏洞,然后利 ...
- charles抓包的安装,使用说明以及常见问题解决(windows)
charles抓包的安装,使用说明以及常见问题解决(windows) https://blog.csdn.net/zhangxiang_1102/article/details/77855548
- Charles抓包工具的用途及应用
Charles抓包工具的用途: 排查问题,测试异常情况 注意:Charles不能直接抓https请求的包,需要用https://www.jianshu.com/p/ec0a38d9a8cf这个方法去配 ...
- Ubuntu 16.04下安装Charles抓包工具
Charles是一个跨平台的抓包工具,虽然没有Fiddler做的这么完美,但是也算是另一个选择. 下载: https://www.charlesproxy.com/download/ 注册: http ...
- Charles抓包工具永久破解+https抓包需要安装安全证书+防止请求乱码
1.charles4.5.6版本安装+永久破解 链接:https://pan.baidu.com/s/1Z49AE6TG2IXUY-7qoyGU4g 提取码:3i97 安装好charles之后,把下载 ...
随机推荐
- 你不可不知的Java引用类型之——WeakReference源码详解
定义 WeakReference是弱引用,该引用不会影响垃圾回收器对对象的回收,不会影响对象的生命周期. 说明 当虚拟机在某个时间点决定要回收一个弱可达(weakly-reachable)对象时,会自 ...
- Android Demo Android ActionBarCompat-ListPopupMenu
示例显示如何使用v7 appcompat库中的PopupMenu显示弹出式菜单.主界面使用V4支持库的ListFragment显示数据列表,当点击列表子项时,在子项下方弹出下拉菜单,并通过设置setO ...
- peewee基本操作
本文将简单的介绍Peewee,一览它的主要特点,主要涉及到: 模型定义 存储数据 检索数据 注意:如果你偏爱稍微高级一点的教程, peewee建立类似twitter应用 是一篇结合Flask框架与pe ...
- 回顾:Linux环境 Mysql新建用户和数据库并授权
回顾:Linux环境 Mysql新建用户和数据库并授权 一.新建用户 //登录Mysql @>mysql -u root -p @>密码 //创建用户 mysql> insert i ...
- 修改主机时间对MySQL影响
背景 在装机实施时,BIOS忘记调整时间,导致服务器时间与CST不符合:待发现问题时,MySQL环境已经在运行,所以只能通过操作系统进行更改:但是更改完成后,MySQL进行重启时发生了问题.以下为问题 ...
- fedora 28/29 配置 C++ 环境
最近 使用C++ 开发 更换机器的时候,还要重新配置一下 gnu 工具链.于是简单进行了安装了一下: yum install gcc yum install gcc-c++ yum install g ...
- Jetbrains IntelliJ IDEA PyCharm 注册激活(2018最新)
AppCode CLion DataGrip GoLand IntelliJ IDEA PhpStorm PyCharm Rider RubyMine WebStorm下载注册激活 官方下载地址 Ap ...
- phpstorm设置背景图片
对于这个问题,其实很简单,连续按两下shift键或者是Ctrl+Shift+A键即可.出来的界面如下: 输入set Background Image命令,出现的界面如下: 然后选择图片, 点击ok,即 ...
- 【夯实PHP基础】PHP多进程-- pcntl_fork实现
本文地址 参考文档 分享提纲: 1. 概述 2.安装(只支持Linux) 3. 代码实验多进程pcntl_fork 4. 具体解释 1. 概述 PHP有个pcntl_fork的函数可以实现多进程,但要 ...
- 一张图看Docker