gpt4 book ai didi

javascript - 注入(inject)时 iframe 代码不执行

转载 作者:行者123 更新时间:2023-11-30 18:33:30 24 4
gpt4 key购买 nike

我一直在尝试在我正在进行的一些 XSS 研究中使用此代码。我希望使用我选择的文本在易受攻击的页面上生成一个 iframe。如果我采用以下代码并将其放入 html 标记中并浏览到它,则 iframe 将按预期使用文本创建。但是,如果我尝试将代码注入(inject)我的测试界面(该死的易受攻击的 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>

谢谢!

最佳答案

尝试关闭您的 <script>标签。


如果这没有帮助,可能是 populateIframe()没有被调用

在不完全了解您的情况的情况下,我敢说易受攻击的页面已经有一个 <body>干扰你的第二个想要加载的元素..不确定当有 2 个时会发生什么 body标签。如果是这种情况,您可以删除多余的 body标记并替换 iframe与:

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

然后你的JS将在iframe时被调用已完成添加到 DOM。

关于javascript - 注入(inject)时 iframe 代码不执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8933916/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com