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 抓包工具安装和采坑记录的更多相关文章

  1. Charles抓包工具安装与配置

    在实际开发中,我们需要时常抓取线上的请求及数据,甚至是请求的html文档,js,css等静态文件来进行调试.在这里,我使用charles来进行以上操作.但是呢,charles需要进行一系列配置才能达到 ...

  2. Charles抓包工具的使用(一)

    前提:charles的说明 Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的.该软件是用Java写的,能够在W ...

  3. Charles抓包工具使用

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

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

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

  5. Fiddler4入门--手机抓包工具安装和使用说明

    Fiddler4入门--手机抓包工具安装和使用说明.电脑最好是笔记本连同一个wifi,这样能和手机保持统一局域网内. 很多区块链dapp项目方风控做的很差,利用fiddler抓包分析找一些漏洞,然后利 ...

  6. charles抓包的安装,使用说明以及常见问题解决(windows)

    charles抓包的安装,使用说明以及常见问题解决(windows) https://blog.csdn.net/zhangxiang_1102/article/details/77855548

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

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

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

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

  9. Charles抓包工具永久破解+https抓包需要安装安全证书+防止请求乱码

    1.charles4.5.6版本安装+永久破解 链接:https://pan.baidu.com/s/1Z49AE6TG2IXUY-7qoyGU4g 提取码:3i97 安装好charles之后,把下载 ...

随机推荐

  1. 你不可不知的Java引用类型之——WeakReference源码详解

    定义 WeakReference是弱引用,该引用不会影响垃圾回收器对对象的回收,不会影响对象的生命周期. 说明 当虚拟机在某个时间点决定要回收一个弱可达(weakly-reachable)对象时,会自 ...

  2. Android Demo Android ActionBarCompat-ListPopupMenu

    示例显示如何使用v7 appcompat库中的PopupMenu显示弹出式菜单.主界面使用V4支持库的ListFragment显示数据列表,当点击列表子项时,在子项下方弹出下拉菜单,并通过设置setO ...

  3. peewee基本操作

    本文将简单的介绍Peewee,一览它的主要特点,主要涉及到: 模型定义 存储数据 检索数据 注意:如果你偏爱稍微高级一点的教程, peewee建立类似twitter应用 是一篇结合Flask框架与pe ...

  4. 回顾:Linux环境 Mysql新建用户和数据库并授权

    回顾:Linux环境 Mysql新建用户和数据库并授权 一.新建用户 //登录Mysql @>mysql -u root -p @>密码 //创建用户 mysql> insert i ...

  5. 修改主机时间对MySQL影响

    背景 在装机实施时,BIOS忘记调整时间,导致服务器时间与CST不符合:待发现问题时,MySQL环境已经在运行,所以只能通过操作系统进行更改:但是更改完成后,MySQL进行重启时发生了问题.以下为问题 ...

  6. fedora 28/29 配置 C++ 环境

    最近 使用C++ 开发 更换机器的时候,还要重新配置一下 gnu 工具链.于是简单进行了安装了一下: yum install gcc yum install gcc-c++ yum install g ...

  7. Jetbrains IntelliJ IDEA PyCharm 注册激活(2018最新)

    AppCode CLion DataGrip GoLand IntelliJ IDEA PhpStorm PyCharm Rider RubyMine WebStorm下载注册激活 官方下载地址 Ap ...

  8. phpstorm设置背景图片

    对于这个问题,其实很简单,连续按两下shift键或者是Ctrl+Shift+A键即可.出来的界面如下: 输入set Background Image命令,出现的界面如下: 然后选择图片, 点击ok,即 ...

  9. 【夯实PHP基础】PHP多进程-- pcntl_fork实现

    本文地址 参考文档 分享提纲: 1. 概述 2.安装(只支持Linux) 3. 代码实验多进程pcntl_fork 4. 具体解释 1. 概述 PHP有个pcntl_fork的函数可以实现多进程,但要 ...

  10. 一张图看Docker