Charles详细抓包实践教程

585 阅读2分钟

前言

无论程序员还是运维工程师学会抓包是一项很基础的技能,很多时候需要用到抓包去做数据分析

charles相当于一个插在服务器和客户端之间的“过滤器”

当客户端向服务器发起请求的时候,先到charles进行过滤,然后charles在把最终的数据发送给服务器

注意:此时charles发给服务器的数据,不一定是客户端请求的数据;charles再接到客户端的请求时可以自由的修改数据,甚至可以直接Block客户端发的请求

服务器接收请求后的返回数据,也会先到charles,经过charles过滤后再发给客户端

同理:客户端接收的数据,不一定就是服务器返回的数据,而是charles给的数据

正因为上面的原理,所以charles能实现的功能,对前端开发者来说非常有吸引力,相当于请求和响应都可控的,而且charles为了控制更加方面,提供很多简洁的操作

Charles下载地址

www.charlesproxy.com

web抓包

安装好就能看到电脑的抓包信息了

WX20220904-005039@2x.png

但是呢现在只能看到http的包,https的包还是加密的,还需要操作以下即可 Help -> SSL Proxying -> Install Charles Root Certificate

WX20220904-005601@2x.png

安装证书后信任即可

WX20220904-005907@2x.png

之后设置ssl代理 Proxy -> SSL Proxying Settings

WX20220904-012716@2x.png

之后在电脑上访问百度即可看到https请求的数据了

WX20220904-012932@2x.png

代表https在电脑端抓包已经成功了

抓包手机(IOS/Android)

代理设置 Proxy -> Proxy Settings,把Support HTTP/2和Enable transparent HTTP proxying勾选中保存

WX20220904-020528@2x.png

确保端口没有被占用即可,默认是8888端口

WX20220904-021008@2x.png

WX20220904-021052@2x.png

能看到相关的ip和端口,在wifi中设置一下即可

IMG_D4CDF9194897-1.jpeg

代理设置具体看自己的手机,每台手机操作大同小异

第二步在手机浏览器上访问 chls.pro/ssl 选择允许。小米手机就不用自带浏览器访问有坑注意

IMG_017E9472B6FD-1.jpeg

允许即可,然后去 通用->vpn与设备管理

IMG_655618C6F2B0-1.jpeg

IMG_4534.PNG

选择安装即可,然后就看到手机app的相关抓包信息了

WX20220904-022017@2x.png