百趣云 百趣云的博客

🔖抓包

博主
百趣云
15小时前 · NEW!
同一个 App,两套抓包战场很多逆向工程师安卓玩得转,换 iOS 就处处碰壁——不是能力问题,是两个平台的网络栈、证书体系、工具链有系统性差异。本文把差异点摊开讲,让你带着地图进新战场。差异一:证书信任模型Android:用户证书和系统证书分区,Android 7+ App 默认只信系统证书——所以安卓抓包的主战场是"把证书塞进系统区"(Magisk 模块方案)。iOS:没有分区概念,用户装的 CA 证书在"设置→通用→关于本机→证书信任设置"里打开"完全信任"后即获系统级信任。iOS 的证书安装本身简单,难的是描述文件安装流程和那个隐藏的信任开关。实战影响:iOS 上没做 Pinning 的
博主
百趣云
20小时前 · NEW!
什么时候需要裸抓 TCPHTTP 抓包工具(Charles/mitmproxy)失效的场景:App 走私有 TCP 长连接(IM、游戏、物联网协议),根本不是 HTTPWebSocket 流量被工具显示得不友好QUIC/UDP 协议(HTTP 工具完全盲区)这时要回到网络层的祖师爷工具:tcpdump 抓包 + Wireshark 分析。抓包:手机流量的三种捕获方式方式一:路由器/热点抓包(最通用)# Mac 开热点,手机连上,直接抓热点网卡 sudo tcpdump -i en0 -w phone.pcap host 手机IP # 或抓特定端口 sudo tcpdump -i en0 -w
博主
百趣云
21小时前 · NEW!
抓包分析的本质是"提问-验证"循环面对一条陌生的加密流量,新手盯着 hex 发呆,老手在做假设-验证的循环:猜一个结构,找证据,错了换下一个假设。本文把这套心法拆成可执行的步骤。第一步:建立流量的"地图"抓到包先别急着看单条,先看全貌:会话结构:这次操作产生了几个请求?顺序是什么?(Charles 的 Sequence 视图)域名分布:api 域名、cdn 域名、埋点域名各是什么?(分清业务流量和噪音)协议类型:HTTP/1.1 还是 H2?明文 json 还是加密体?全貌看完,心里要有张图:哪个请求是核心(业务数据),哪些是配套(鉴权、埋点、心跳)。第二步:找"锚点"——已知信息分析加密流量
博主
百趣云
23小时前 · NEW!
为什么 Android 7 之后抓包变难了Android 7(API 24)改了网络安全模型:App 默认只信任系统证书,不再信任用户证书。你在设置里装的 Charles 证书进的是用户证书区,App 直接无视——这就是"证书装了但抓不到包"的原因。解决思路只有一个:把抓包证书塞进系统证书区 /system/etc/security/cacerts/。Android 10+ 的 system 分区是只读的(动态分区+dm-verity 校验),直接 remount 会失败,这就是本文要解决的完整链路。前置条件已 root(Magisk)Charles/mitmproxy 的 CA 证书(pem
博主
百趣云
1天前 · NEW!
为什么抓包工具失效时要 hook libsslApp 做了 SSL Pinning 后,Charles/mitmproxy 这类中间人抓包全部失效——证书校验在客户端代码里写死,代理证书不被信任。但有一个地方永远是明文:加密前和解密后的数据。所有 HTTPS 流量最终都要经过 SSL 库的 SSL_write(加密前)和 SSL_read(解密后),在这里 hook,Pinning 形同虚设。Android 上绝大多数 App 用 BoringSSL(Google 的 OpenSSL 分支),SO 名字是 libssl.so,或静态链接进自己的 SO(比如抖音的 libttboringssl)