SSL Pinning 技术可以有效阻止 MitM 攻击. 如果使用 MitM 方式抓取使用了 SSL Pinning 的请求, 所有请求都会断开, 不能正常完成请求.
但我今天想抓去某 app(iOS 下, 第三方微博客户端)的请求, 打开任意抓包攻击, 抓包工具一干二净, 一点请求都没有. 使用的抓包工具有 HTTP Catcher, Thor, Charles等都无效, 而且所有请求都能在 app 里正常完成.
所以它是如何实现的? 以及还有哪些方法可以防止抓包?
SSL Pinning 技术可以有效阻止 MitM 攻击. 如果使用 MitM 方式抓取使用了 SSL Pinning 的请求, 所有请求都会断开, 不能正常完成请求.
但我今天想抓去某 app(iOS 下, 第三方微博客户端)的请求, 打开任意抓包攻击, 抓包工具一干二净, 一点请求都没有. 使用的抓包工具有 HTTP Catcher, Thor, Charles等都无效, 而且所有请求都能在 app 里正常完成.
所以它是如何实现的? 以及还有哪些方法可以防止抓包?
1
caesar223334 Nov 20, 2020
内置个 VPN [doge]
|
2
yaphets666 Nov 20, 2020
请求走的不是 HTTP 协议
|
3
ethusdt OP @yaphets666 #2 应用层常用的就是 HTTP/HTTPS 协议吧? 一个第三方微博客户端(vvebo)难道还要自建通信协议(server/client)去来防范抓包吗? 我在学习研究.. 本身也是 VVebo 的 pro 用户, 本想将微博的热搜列表加一个过滤功能(使用⭕️X 的脚本功能)
|
4
yaphets666 Nov 20, 2020
@FaiChou 你在 v2 搜搜抓包的帖子 我记得有人说过
|
5
knightdf Nov 20, 2020
我倒是想知道 APP 请求的签名算法咋解
|
6
weixiangzhe Nov 20, 2020
app 里可以不走 http 代理的吧,银行类支付宝 微信都不走 http 代理
|
7
learningman Nov 20, 2020 via Android
http 代理本来就是尊重,又不是强制。。。
|
8
yushiro Nov 20, 2020 via iPhone
ios 的 NE 框架,有 3 种模式,具体本站你可以搜一下,曾经有个作者来推广过。
https://www.v2ex.com/t/715477#reply47 |
9
by73 Nov 20, 2020
感觉多数都是 SSL Pinning,导致抓包工具不是没用,只是单纯的解不出 TLS 协议。iOS 不太清楚,Android 现在已经有 User CA 了,开发者可以选择只信任某些证书,而不是所有系统根下的;当然可以强行使用旧版 Android 来绕过这个限制,不过也只是临时方案。
当然 Android 如果有 root 权限,可以借助 xposed 来拦截部分用 JSSE 的应用,之类的 = = |
10
ethusdt OP 刚下载体验了下, 果然能抓到 app, 我再用其他的抓包, 就抓不到. 有空研究下.
https://tva1.sinaimg.cn/large/0081Kckwly1gkw0jkpsy8j30z60u01ip.jpg |
11
ethusdt OP 刚下载体验了下 https://www.v2ex.com/t/715477#reply48 可以抓包
|
12
DoctorCat Nov 21, 2020
自定义协议,使用二进制压缩编码传输。抓到也无法简单的分析出来,只能苦心逆向 APP
|
13
levelworm Nov 21, 2020
同问如何规避 SSL Pinning,是不是只能反编译然后修改函数。。。
|
14
learningman Nov 21, 2020 via Android @levelworm 自己维护一个 CA 包,自己实现部分的 SSL 校验
|
16
cheng6563 Nov 22, 2020 via Android
用客户端证书,让服务端验证。客户端证书是可以自签的。
|