美文网首页
Charles(青花瓷抓包工具)安装与使用教程

Charles(青花瓷抓包工具)安装与使用教程

作者: 孙俊洲 | 来源:发表于2018-11-23 23:31 被阅读0次

    一、准备工作

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

    需要java环境(安装地址):
    https://www.oracle.com/technetwork/java/javase/downloads/index.html

    二、下载与安装

    Charles是在 Mac 下常用的网络封包截取工具,在做移动开发时,为了调试与服务器端的网络通讯协议,需要截取网络封包来分析。
    官网下载地址:https://www.charlesproxy.com


    Charles 是收费软件,可以免费试用 30 天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过 30 分钟,并且启动时将会有 10 秒种的延时。

    (1)官方安装破解方法:

    在Help窗口内选择Register Charles:

    // Charles Proxy License
    // 适用于Charles任意版本的注册码。
    // Charles 4.2.7目前是最新版,亲测可用。
    Registered Name: https://zhile.io
    License Key: 48891cf209c6d32bf4

    (2)安装下载破解版,安装即可使用

    http://xclient.info/s/charles.html?t=4d93195475bee25eacad7e2e5af2f76da51df76b#versions (内有详细教程)

    三、主要功能使用

    (1)初步认识

    Charles 提供两种查看封包的视图, “Structure” 和 “Sequence”。
    1、Structure 视图将网络请求按访问的域名分类。
    2、Sequence 视图将网络请求按访问的时间排序。
    可以根据具体的需要在这两种视图之前来回切换。请求多了有些时候会看不过来,Charles 提供了一个简单的 Filter 功能,可以输入关键字来快速筛选出 URL


    (2)HTTP & HTTPS抓包(网页)

    抓取 Http 和 Https 的请求和响应。
    1.http:

    启动 后,将 Charles 设置成系统代理,选择菜单中的 “Proxy” –> “macOS Proxy” 将 Charles 设置成系统代理。
    通过浏览器请求的网址都会出现在这里。点击具体的请求后出现request和response等信息。
    2.https:
    如果是https请求出现的是乱码,这时候你就需要安装Charles的CA证书了,点击 Charles 的菜单,选择 “Help”-> “SSL Proxying”-> “Install Charles Root Certificate”, 然后输入系统的帐号密码,即可在钥匙串看到添加好的证书。默认该证书是不被信任的,在该证书上右键->”显示简介”,手动改为始终信任。

    Charles设置Proxy
    Proxy -> SSL Proxying Settings
    勾选Enable SSL Proxying,点击Add

    注意:
    (1)未设置前https的标识都有<unknown>
    (2)Host设置,不知道具体的API地址,可设置为" * ", 代表所有。
    (3)Port设置,设置时Port默认都是443。

    (3)手机抓包

    可以抓手机端访问的资源。
    Charles 设置:
    要截取 手机网络请求,首先需要将 Charles 的代理功能打开。在 Charles 的菜单栏上选择 “Proxy”–>“Proxy Settings”,填入代理端口 8888,并且勾上 “Enable transparent HTTP proxying” 就完成在 Charles 上的设置。


    iOS手机:
    在 iPhone 的 “ 设置 ”–>“ 无线局域网 ” 中,找到当前连接的 wifi 名,点击右边的详情键,在其最底部有「HTTP 代理」一项,将其切换成手动,填上 Charles 运行所在的电脑的 IP,以及端口号 8888。

    Android 手机:
    “设置”->”WLAN”,选择与电脑相同的WiFi,勾选”显示高级选项”,并将代理设置为手动。然后填上 电脑的 IP,以及端口号 8888

    如果要在 iOS 或 Android 机器上截取 Https 协议的通讯内容,还需要在手机上安装相应的证书。点击 Charles 的顶部菜单,选择 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate on a Mobile Device or Remote Browser”,然后就可以看到 Charles 弹出的简单的安装教程。



    然后手机访问网站时会有弹窗,点击Allow

    (4)修改网络请求参数

    网络请求的截获和动态修改。
    了调试服务器的接口,需反复尝试不同参数的网络请求。Charles 可以方便地提供网络请求的修改和重发功能。选中以往的网络请求,工具栏中点击 “Edit”,即可创建一个可编辑的网络请求。

    (5)模拟慢速网络

    支持模拟慢速网络,主要是模仿手机上的2G/3G/4G的访问流程。

    在测试时想要模拟网络慢的情况,在Proxy->Throttle Setting,然后选择Enable Throttling,在Throttle Preset下选择网络类型即可。
    “Only for selected hosts” 项代表:模拟指定网站的慢速网络。

    (6)设置断点

    在Charles发起一个请求的时候,可以给某个请求打一个断点,来观察或者修改请求或者返回的内容。只需要在请求网址右击选择Breakpoints,然后点击断点按钮。

    (7)服务器压力测试

    使用 Charles 的 Repeat 功能来简单地测试服务器的并发处理能力,在打压的网络请求上(POST 或 GET 请求均可)右击,然后选择 「Repeat Advanced」菜单项,选择打压的并发线程数以及打压次数,即可开始打压。

    (8)过滤

    在 Charles 的菜单栏选择 Proxy->Recording Settings,然后选择 Include 栏,选择Add,然后填入需要监控的协议,主机地址,端口号,进行过滤。

    相关文章

      网友评论

          本文标题:Charles(青花瓷抓包工具)安装与使用教程

          本文链接:https://www.haomeiwen.com/subject/mlasqqtx.html