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
- 启动app
-
Android配置
- Android设备太多就不展示了反正与ios类似的操作。
五、HTTPS配置证书
- 只有安装了证书才能在抓包后查看HTTPS加密的数据。
- 一台电脑只能对一台手机安装证书,也就是说一台电脑只能用对应安装了证书的手机进行HTTPS的抓包
- 安装
- 1.浏览器安装
- MacOS
- 浏览器配置上代理
- 如上图点击浏览器证书安装
- Windows
- 与MacOS类似
- MacOS
- 2.手机安装
-
ios
- 手机配置上代理
- 如上图点击手机证书安装
- 出现
- 打开手机浏览器Safari/Uc/Google等都可以(我这里用的Safari),输入:chls.pro/ssl
- 点击安装(我这里是已经安装好了)
- Proxy-SSL Proxying setting
-
Android
- 与ios类似
-
六、抓取Web HTTPS数据
- 安装证书后访问一下百度贴吧登录一下
- 可以查看到用户的json类型的信息
七、抓取App HTTPS数据
- 安装证书后手机配置好代理然后打开微博app测试一下
- 同样可以看到用户的json类型的信息