Javascript Iframe代码在注入时不执行

Javascript Iframe代码在注入时不执行,javascript,iframe,Javascript,Iframe,我一直试图在我正在进行的一些XSS研究中使用这段代码。我希望在易受攻击的页面上生成一个iframe,其中包含我选择的文本。如果我将下面的代码放在html标记中并浏览到它,那么iframe将按照预期与文本一起创建。但是,如果我尝试将代码注入到我的测试表面(该死的易受攻击的web应用程序),则会生成iframe窗口,但不会生成任何文本。谁能告诉我这里发生了什么事,有没有办法解决 <script type="text/javascript"> function populateI

我一直试图在我正在进行的一些XSS研究中使用这段代码。我希望在易受攻击的页面上生成一个iframe,其中包含我选择的文本。如果我将下面的代码放在html标记中并浏览到它,那么iframe将按照预期与文本一起创建。但是,如果我尝试将代码注入到我的测试表面(该死的易受攻击的web应用程序),则会生成iframe窗口,但不会生成任何文本。谁能告诉我这里发生了什么事,有没有办法解决

<script type="text/javascript">

    function populateIframe() {
        var ifrm = document.getElementById('myIframe');
        ifrm = (ifrm.contentWindow) ? ifrm.contentWindow : (ifrm.contentDocument.document) ? ifrm.contentDocument.document : ifrm.contentDocument;
        ifrm.document.open();
        ifrm.document.write("hello world!");
        ifrm.document.close();
    }
</script>
<body onload="populateIframe();">
<iframe id="myIframe"></iframe>

函数populateFrame(){
var ifrm=document.getElementById('myIframe');
ifrm=(ifrm.contentWindow)?ifrm.contentWindow:(ifrm.contentDocument.document)?ifrm.contentDocument.document:ifrm.contentDocument;
ifrm.document.open();
ifrm.document.write(“你好,世界!”);
ifrm.document.close();
}

谢谢

尝试关闭您的
标签。


如果这没有帮助,可能没有调用
populateFrame()

在不确切了解您的情况的情况下,我冒昧地说,易受攻击的页面已经有一个
元素干扰了您的第二个页面要加载的内容。我不确切地知道当有2个
body
标记时会发生什么。如果是这种情况,您可以删除额外的
主体
标记,并用以下内容替换
iframe

<iframe id="myIframe" onload="populateIframe();"></iframe>


然后,当
iframe
添加到DOM中时,将调用JS。

感谢您的回复。很抱歉,我的原始源代码中有结束脚本标记,我一定是在键入代码时忘记缩进它了。将事件处理程序更改为onload成功了——我尝试了一百万种变体,但所有变体都将事件处理程序放在单独的html中。谢谢!