3 回答
TA贡献1998条经验 获得超6个赞
要从您的表单执行 javascript,您可以尝试:
<iframe src=javascript:alert(1)>
或者
<img src=x onerror=alert(1)>
另外值得注意的是:
script
使用插入的元素在插入innerHTML
时不会执行。
TA贡献1836条经验 获得超4个赞
要手动执行 JavaScript,您可以执行以下操作
无需编辑 HTML 文件,将其添加到浏览器的输入字段中。
<iframe onload="alert(1)" style="display:none"></iframe>
关于为什么这在这里起作用的更多信息
有关如何在此处执行此类操作的更多信息:developer.mozilla.org
<html>
<script language='JavaScript'>
function getwords(){
textbox = document.getElementById('words');
label = document.getElementById('label');
label.innerHTML = textbox.value;
}
</script>
<body>
<input type="text" id="words">
<input type="button" onclick="getwords()" id="Button" value="Enter" />
<label id="label">
</label>
</body>
</html>
TA贡献1946条经验 获得超3个赞
这是因为<script>
s 在页面加载时运行,并且当label
的内容更改时,脚本已经运行。
但是,如果您将<script>
标签注入不同的页面(通过后端(XSS 意味着跨站点脚本)),它确实有效。
或者,要使其在页面加载后注入内容的场景中工作(如您的情况),您可以使用 JS 事件(如onclick
)来运行您的代码:
<div onclick="alert(1)">Click me!</div>
或者,要在没有用户交互的情况下执行它,您可以使用<iframe>
'sonload
事件:
<iframe onload="alert(1)" style="display:none"></iframe>
添加回答
举报