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

忽然在想,在网站嵌入百度统计啊,多说啊,或者 disqus 这样的代码,是否有可能被 XSS

  •  
  •   tony1016 · 2016-01-27 11:13:36 +08:00 · 3524 次点击
    这是一个创建于 3222 天前的主题,其中的信息可能已经有所发展或是发生改变。
    并不是被恶意劫持,而是比如类似百度这样的不要脸的公司,会不会通过脚本去窃取用户的 cookie 信息呢?
    14 条回复    2016-01-28 11:32:24 +08:00
    9hills
        1
    9hills  
       2016-01-27 11:15:22 +08:00   ❤️ 1
    lz 还记得当年 github 被 DDOS 的事件么

    就算百度靠谱,中间人就是了。。。
    quix
        2
    quix  
       2016-01-27 11:20:17 +08:00
    记得上 https
    yeyeye
        3
    yeyeye  
       2016-01-27 11:22:31 +08:00
    最早的时候有过统计代码带毒事件,后来出过统计代码劫持用来 DDOS 事件。

    理论上只要是第三方就可能有风险(就算组件是你自己写的,又能保证没有 bug 么)

    所以最好是用 HTTPS ,防劫持,至于 XSS ,用它就爱它吧。
    virusdefender
        4
    virusdefender  
       2016-01-27 11:23:37 +08:00
    百度主动盗取可能性不大,但是可能存在漏洞被利用,见 http://wooyun.org/bugs/wooyun-2010-079034
    Cu635
        5
    Cu635  
       2016-01-27 11:54:46 +08:00   ❤️ 1
    @virusdefender
    扯淡。 baidu 连卖疾病相关贴吧、手把手教卖假药的人用 PS 制造假药品许可证、拿钱删除三聚氰胺奶粉致死这些事儿都能干的出来,还有什么干不出来的?

    没干只是觉得利益太低而已。等着 baidu 发展到蚊子腿也不得不吃的时候,那就什么都干了。
    qgy18
        6
    qgy18  
       2016-01-27 12:59:58 +08:00   ❤️ 5
    1 、 HTTPS 可以保证第三方脚本被中间人劫持、篡改;
    2 、 HTTPS 避免不了源站上的修改。类似楼主说的某某公司修改代码盗取 Cookie ,或者源站被入侵导致内容被篡改;

    对于第 2 点, Web 应用安全工作组提出了一个方案叫: Subresource Integrity 。
    简单原理就是你先自己审计第三方文件内容,如果觉得没问题,在引入这个文件时带上 HASH 值,之后浏览器会自动帮你检测这个文件是否被修改,如果修改了就拒绝加载。

    详见我的博客:
    https://imququ.com/post/subresource-integrity.html
    maxsec
        7
    maxsec  
       2016-01-27 13:06:04 +08:00
    屈屈又来安利他的博客了。。。虽然营养很丰富
    tony1016
        8
    tony1016  
    OP
       2016-01-27 14:27:40 +08:00
    @qgy18 嗯,领教了
    tony1016
        9
    tony1016  
    OP
       2016-01-27 14:28:42 +08:00
    @qgy18 但是估计对第三方脚本的版本升级带来很大不便
    ivmm
        10
    ivmm  
       2016-01-27 14:29:40 +08:00
    @qgy18 如果把百度分享拉到本地呢~
    tony1016
        11
    tony1016  
    OP
       2016-01-27 14:30:02 +08:00
    @qgy18 想了想,还是重要请求都有令牌机制,比较好
    qgy18
        12
    qgy18  
       2016-01-27 14:40:35 +08:00
    @ivmm 自己托管肯定没有任何问题。 SRI 是为了解决以下场景而提出的:
    1 )必须使用 CDN 。原因可以是节省流量费用,也可以是给用户更好的体验,等等;
    2 )担心 CDN 被入侵,导致文件从源头上被篡改,从而给主站带来安全风险;

    其中第二点, HTTPS 或者 CSP 都无法解决。

    另外实际使用 SRI 时,我们一般会做个降级,当 CDN 无法加载时走本地的,保证可用。代码示意如下:
    <script src="https://cdn/jquery.js" crossorigin="anonymous" integrity="sha256-xxx"></script>
    <script>
    if(!jQuery) {
    document.write('<scr' + 'ipt src="https://local/jquery.js"></scr' + 'ipt>');
    }
    </script>
    Khlieb
        13
    Khlieb  
       2016-01-27 18:37:13 +08:00 via Android
    @Cu635 去年卖舰队 collection 吧,今年卖血友病吧都闹得沸沸扬扬的了
    openbaby
        14
    openbaby  
       2016-01-28 11:32:24 +08:00
    反正多说最近的垃圾评论特别多。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2274 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:07 · PVG 00:07 · LAX 08:07 · JFK 11:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.