Javascript 涉及不同域的级联注入

Javascript cascade injection involving distinct domains

简单地说:

外部 Javascript 代码能否在页面 DOM 中注入托管在第三个不同域上的另一个脚本?

例如:

给定 foo.com 网站,有一个 html 脚本标签,其 src 设置为 http://bar.xyz/script.js.
script.js 可以注入 http://qux.net/abc.js (托管在 qux.com) 吗?

http://foo.com/

  <script src="http://bar.xyz/script.js"></script>

  // Content of bar.xyz/script.js:
  !(function(){
    var k = document.createElement('script')
        , s = document.getElementsByTagName('script')[0];
    k.type='text/javascript'; k.async=true;
    k.src = document.location.protocol+'//qux.net/abc.js';
    s.parentNode.insertBefore(k,s);
    //…
  })();

我无法让 abc.js 被注入并且没有 error/alert 接缝弹出到控制台。
这里是否适用任何安全限制政策?
我仍在寻找讨论这个的文章或 SO 线程......
谢谢。

是;一旦 Javascript 代码在您的源中 运行,它就与您自己的代码完全没有区别,并且可以做任何您能做的事情。