• 请不要在回答技术问题时复制粘贴 AI 生成的内容
tony1016
V2EX  ›  程序员

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

  •  
  •   tony1016 · Jan 27, 2016 · 4028 views
    This topic created in 3785 days ago, the information mentioned may be changed or developed.
    并不是被恶意劫持,而是比如类似百度这样的不要脸的公司,会不会通过脚本去窃取用户的 cookie 信息呢?
    14 replies    2016-01-28 11:32:24 +08:00
    9hills
        1
    9hills  
       Jan 27, 2016   ❤️ 1
    lz 还记得当年 github 被 DDOS 的事件么

    就算百度靠谱,中间人就是了。。。
    quix
        2
    quix  
       Jan 27, 2016
    记得上 https
    yeyeye
        3
    yeyeye  
       Jan 27, 2016
    最早的时候有过统计代码带毒事件,后来出过统计代码劫持用来 DDOS 事件。

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

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

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

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

    详见我的博客:
    https://imququ.com/post/subresource-integrity.html
    maxsec
        7
    maxsec  
       Jan 27, 2016
    屈屈又来安利他的博客了。。。虽然营养很丰富
    tony1016
        8
    tony1016  
    OP
       Jan 27, 2016
    @qgy18 嗯,领教了
    tony1016
        9
    tony1016  
    OP
       Jan 27, 2016
    @qgy18 但是估计对第三方脚本的版本升级带来很大不便
    ivmm
        10
    ivmm  
       Jan 27, 2016
    @qgy18 如果把百度分享拉到本地呢~
    tony1016
        11
    tony1016  
    OP
       Jan 27, 2016
    @qgy18 想了想,还是重要请求都有令牌机制,比较好
    qgy18
        12
    qgy18  
       Jan 27, 2016
    @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  
       Jan 27, 2016 via Android
    @Cu635 去年卖舰队 collection 吧,今年卖血友病吧都闹得沸沸扬扬的了
    openbaby
        14
    openbaby  
       Jan 28, 2016
    反正多说最近的垃圾评论特别多。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3601 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 04:49 · PVG 12:49 · LAX 21:49 · JFK 00:49
    ♥ Do have faith in what you're doing.