Charles抓包工具的原理:Charles在客户端和服务器之间设置了一个代理,把客户端发送的请求拦截,代理发送给服务器;代理接受服务器返回的数据,代理再返回给客户端。
Charles的安装:找到安装包并打开;勾选同意,点击下一步;选择路径,点击下一步;点击install,等待安装;点击finish。
点击exe,运行Charles。
web端Charles证书的下载:因为https协议是一个加密协议,所以用Charles抓包查看内容的时候里面的数据都是乱码格式
我们需要下载ssl证书,来解密里面的数据。点击help,ssl proxying,点击install Charles root certificate
弹出证书框,点击安装
点击当前用户,选择下一步
点击手动选择,点击浏览,选择受信任的机构,点击完成,等待导入成功
,确定,下一步
点击proxy,点击proxy setting
选择enable,点击ok
点击ssl setting,include下点击add ,host、port 输入*点击ok,点击OK,重启Charles即可。
打开Charles,打开浏览器网页,验证设置是否成功
已经成功,抓取接口,正常查看接口中的请求和返回的数据内容。
Charles简单操作:
1.设置断点,修改请求
复制路径
点击proxy ,breakpoint settings ,勾选,add ,粘贴host,点击query 输入* ,点击request,点击OK,OK, 刷新页面
编辑edit request 123为12306
点击execute 执行
可以看到原网页请求已被更改。
2.设置断点,修改返回数据
复制url
设置断点
进入断点设置
添加接口
编辑query为*, 选择response, 点击OK,点击OK
刷新网页,得到修改response
修改数据,点击执行
显示数据已被修改
3. 保存数据到本地
4.加载本地数据
得到url
选择插入文件
选择路径,替换query,选择文件
点击打开
点击OK,点击OK
重启浏览器,数据替换成功
5.弱网测试
点击节流设置
输入路径,点击OK
刷新页面,一直加载,设置成功
6.模拟服务器403,404
进入黑名单
设置路径
点击OK,刷新404
点击OK,刷新,403
7.选中,屏蔽web接口
清空,且为选中状态
刷新页面,捕捉到数据
清空,取消勾选
刷新,未取得数据
设置主要接口
打开设置
点击add ,填充地址,点击OK
显示为主要接口和其他接口
app端
app端需要下载证书,调整频段和端口,点击help,在同一网络下,设置手机为静态IP,调至和电脑无线IP一致,输入端口8888,下载证书,电脑点击允许链接,取消Windows捕捉,重启Charles,就可以实现对app的抓包了,操作步骤和web端相同