charles代理设置 查看https接口

1. 客户端发送的数据包

android7之后 只信任系统根证书, 用户安装的证书只能在浏览器中使用, 其他APP使用不了,线上定位问题(或者想参考别人的接口设计)极不方便
小米手机root需要开发版 而只能通过官方内测申请才能刷开发版, 流程审批都要好几天,能不能批下来还不好说
华为直接禁用root了

手机在不root时,如何安装系统根证书呢?
使用avd? 这个是X86CPU用的, 市面APP一般是arm的,AVD里面安装不了 要改代码 还是只能用在自己开发的APP

vmos android内的虚拟机,自带root

先装证书

openssl x509 -subject_hash_old -in 证书名加后缀计算出hash值,并将后缀设为0
拷贝证书文件到/system/etc/security/cacerts, 可以使用ES文件管理器

adb -s 192.168.1.111:5666 push D:/2094d12a.0 /storage/sdcard/

代理设置

在宿主真机上设置wifi代理不起作用,charles根本抓不到请求, 需要在虚拟机内部设置http proxy端口

但是vmos没有代理设置操作页面!!! 坑了

首先在vmos内打开网络adb
然后祭出adb神器

adb connect 192.168.1.111:5666
adb  -s 192.168.1.111:5666 shell settings put global http_proxy 192.168.1.220:8888

某书的示例

嗯 这个处理方式和我用的很像啊

部分APP无法代理抓包的原因及解决方法

https://cloud.tencent.com/developer/article/1490033
不是所有的app默认都会使用系统代理 VPN就不同了

另外也可以链接电脑热点,然后用wireshark抓包,就是效率低一些

2. 服务端接收到的数据

原因:浏览器发出的请求 后端多个服务转来转去,原有的param都不知道变成什么样了

抓取 HTTP GET 流量:
tcpdump -s 0 -A -vv 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420' 

也可以抓取 HTTP POST 请求流量:
tcpdump -s 0 -A -vv 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354'

针对某一个端口抓包
tcpdump tcp port 8081

posted @   funny_coding  阅读(2123)  评论(0编辑  收藏  举报
编辑推荐:
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥
build beautiful things, share happiness
点击右上角即可分享
微信分享提示