这是一个xss攻击,为什么它无效?

时间:2013-04-02 09:36:09

标签: xss

要测试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)?

1 个答案:

答案 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添加脚本元素。