V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yongliu
V2EX  ›  SSL

https 也能被注入劫持吗?

  •  
  •   yongliu · 2020-03-06 16:19:39 +08:00 · 4644 次点击
    这是一个创建于 1712 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天在 jellow 看到即友反馈在内嵌网页中打开苹果支持页时出现了唤醒其他应用的情况,有人分析是运营商注入劫持导致的,非常好奇这是怎么做到的。

    苹果支持页应该已经全站 https 了,我理解 https 的内容运营商很难篡改吧,只要客户端进行证书校验,理应不会被注入,除非运营商已经逆天到伪造证书了。之前没搞过 webview 开发,是利用了 webview 的什么特性吗?

    22 条回复    2020-03-07 13:29:29 +08:00
    GDC
        1
    GDC  
       2020-03-06 16:25:29 +08:00
    每一个微信浏览器打开的页面 都会被注入微信的脚本哦,包括 https 的。
    毕竟人家主程序有网站控制整个 webview 的能力。
    GDC
        2
    GDC  
       2020-03-06 16:25:54 +08:00
    @GDC 有完整控制
    yongliu
        3
    yongliu  
    OP
       2020-03-06 16:28:23 +08:00
    @GDC 微信这个我理解,毕竟网页内容都是微信自己渲染的,运营商的注入劫持我不太明白。
    b821025551b
        4
    b821025551b  
       2020-03-06 16:30:53 +08:00
    客户端被安装了其它根证书可以实现。
    heiheidewo
        5
    heiheidewo  
       2020-03-06 16:33:55 +08:00
    UC 浏览器了解下
    GDC
        6
    GDC  
       2020-03-06 16:35:06 +08:00   ❤️ 1
    @yongliu 没说是被运营商注入的啊,就不能是 jellow 的浏览器劫持的吗
    yongliu
        7
    yongliu  
    OP
       2020-03-06 16:41:48 +08:00
    @b821025551b
    @heiheidewo
    @GDC
    可以先排除 jellow 使坏,是 jellow 的人说是运营商注入劫持导致的
    b821025551b
        8
    b821025551b  
       2020-03-06 16:46:18 +08:00
    @yongliu #7 我说的是客户端信任了其他根证书,经常有一堆人去下各种描述文件,一顿信任下去。
    yongliu
        9
    yongliu  
    OP
       2020-03-06 16:50:07 +08:00
    @b821025551b #8 看下来我也比较怀疑是这个导致的
    GDC
        10
    GDC  
       2020-03-06 16:54:03 +08:00
    @yongliu 还有一种玩法是 降级攻击,不过苹果的 https 应该玩不了这招
    yongliu
        11
    yongliu  
    OP
       2020-03-06 16:57:11 +08:00
    @GDC 你的意思是强制 302 到 http ?这招在客户端不接受应该就可以破吧
    temporary
        12
    temporary  
       2020-03-06 17:00:33 +08:00
    运营商劫持 dns 就可以吧
    temporary
        13
    temporary  
       2020-03-06 17:01:12 +08:00
    @temporary #12 好像也不好操作
    GDC
        14
    GDC  
       2020-03-06 17:07:29 +08:00
    @yongliu 啊哈,有了新发现

    请求一下 support.apple.com 响应的 header 中包括了一项 X-Cache: HIT from cache.51cdn.com
    这个 51cdn 是网宿的域名,也就是说苹果这个页面被缓存在了网速的 cdn 服务器里,
    也就说,多了一个投毒的可能性咯,至于网速会不会做这种事,可参考 /t/272022 这个帖子
    keyfunc
        15
    keyfunc  
       2020-03-06 17:12:04 +08:00
    Apple 的域名并不在 HSTS Preloading 的列表中,所以理论上用户访问 http 时运营商是有机会进行劫持的,因为存在 http 301 明文的阶段。
    keyfunc
        16
    keyfunc  
       2020-03-06 17:16:38 +08:00
    @GDC 我觉得 CDN 厂商是没胆子做这种事的,一般 CDN 投毒大多发生在 CDN 和 源站之间用 HTTP 传输数据。
    yongliu
        17
    yongliu  
    OP
       2020-03-06 17:19:21 +08:00
    @GDC #14 这倒是一种可能

    @keyfunc #15 访问一个全站 https 站点对应的 http 链接才会碰到这种情况吧,如果一开始访问的就是 https 链接,应该可以避免这种劫持。
    tengyoubiao
        18
    tengyoubiao  
       2020-03-06 17:23:44 +08:00 via Android
    黄即回来了?
    yongliu
        19
    yongliu  
    OP
       2020-03-06 17:36:27 +08:00
    @tengyoubiao #18 还是 jellow 小打小闹,黄即看起来是真黄了,都过去半年多了
    virusdefender
        20
    virusdefender  
       2020-03-06 17:38:44 +08:00
    cdn 回源的时候可能是 http 被劫持
    GoRoad
        21
    GoRoad  
       2020-03-07 10:16:12 +08:00
    @yongliu #19 黄即怎么了 一段时间没上 突然发现打不开了
    yongliu
        22
    yongliu  
    OP
       2020-03-07 13:29:29 +08:00 via Android
    @GoRoad #21 哈哈,你有点后知后觉啊,去年七月份忽然「技术升级」了,然后就没有然后了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1102 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:45 · PVG 06:45 · LAX 14:45 · JFK 17:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.