Charles抓包

1,377 阅读3分钟

Charles简介

  • Charles是一个在您自己的计算机上运行的Web代理(HTTP代理/HTTP监视器)。然后,您的Web浏览器(或任何其他Internet应用程序)将配置为通过Charles访问Internet,然后Charles可以记录并显示发送和接收的所有数据。简称:抓包。

主要功能/特点

  • SSL代理-以纯文本格式查看SSL请求和响应。
  • Bandwidth Throttling模拟较慢的Internet连接,包括延迟。
  • AJAX调试-以树或文本形式查看XML和JSON请求和响应。
  • AMF-以树形式查看Flash Remoting/Flex Remoting消息的内容。
  • 重复请求以测试后端更改。
  • 编辑测试不同输入的请求。
  • 用于拦截和编辑请求或响应的断点。
  • 使用W3C验证器验证记录的HTML,CSS和RSS/atom响应。

使用场景

  • MacOS Web
  • Windows Web
  • ios App
  • Android App

官方网站

一、安装

  • MacOS
  • Windows

二、配置

  • MacOS

    • 设置
  • Windows

    • 与MacOS类似

三、抓取Web HTTP数据

  • 使用:谷歌浏览器~在谷歌商店安装插件:Proxy SwitchyOmega~开启(使用其他浏览器都可以)
    • 安装
    • 添加该插件
    • 启用插件
    • 浏览器右上角进入Proxy SwitchyOmega配置
    • 新增一个代理模式
    • 例如
    • 切换这个代理模式开始抓包(在不抓包的情况下使用:系统代理/直接连接 或者关闭插件)
    • 切换代理模式后打开Charles,在百度搜索一下Charles测试一下。就会看到发出请求的数据与返回的数据。因为百度是HTTPS现在能看到的返回数据经过加密。下面会介绍HTTPS。

四、抓取App HTTP数据

  • 移动端需要在统一网段下例如:同一WiFi下

  • ios配置-然后启动你需要抓包的App并且Charles确认

    • 启动app
  • Android配置

    • Android设备太多就不展示了反正与ios类似的操作。

五、HTTPS配置证书

  • 只有安装了证书才能在抓包后查看HTTPS加密的数据。
  • 一台电脑只能对一台手机安装证书,也就是说一台电脑只能用对应安装了证书的手机进行HTTPS的抓包
  • 安装
    • 1.浏览器安装
      • MacOS
        • 浏览器配置上代理
        • 如上图点击浏览器证书安装
      • Windows
        • 与MacOS类似
    • 2.手机安装
      • ios

        • 手机配置上代理
        • 如上图点击手机证书安装
        • 出现
        • 打开手机浏览器Safari/Uc/Google等都可以(我这里用的Safari),输入:chls.pro/ssl
        • 点击安装(我这里是已经安装好了)
        • Proxy-SSL Proxying setting
      • Android

        • 与ios类似

六、抓取Web HTTPS数据

  • 安装证书后访问一下百度贴吧登录一下
    • 可以查看到用户的json类型的信息

七、抓取App HTTPS数据

  • 安装证书后手机配置好代理然后打开微博app测试一下
    • 同样可以看到用户的json类型的信息

最后 注意使用完抓包后记得将(浏览器/手机的代理切换回来)