要测试xss攻击,我有以下代码:
<html>
<head><title>test xss</title></head>
<body>
<input type="text" id="my_user_name_show" value="">
<script>
var s = '"/><script>alert(\'xss\');</script><br class="';
document.getElementById('my_user_name_show').value= s;
</script>
</body>
</html>
为什么代码不能触发警报(xss)?
答案 0 :(得分:0)
当实际的 HTML 发生更改时,必须从后端触发对输入表单值的XSS攻击,从而导致
<input type="text" id="my_user_name_show" value=""/>
<script>alert('xss');</script>
<br class="">
要写,这显然会导致它触发警报。另一方面,您的代码只会导致
<input type="text" id="my_user_name_show" value="\"/><script>alert('xss');</script><br class=\"">
放在DOM中,因此不会引起任何警报,因为没有向DOM添加脚本元素。