如何在javascript HTTP请求中制作HTML标签?

时间:2017-11-11 22:17:21

标签: javascript html

我正在尝试制作一个利用XSS反映漏洞的http请求。我试图嵌入以下<script>alert("xss");</script>。问题是我无法直接在稍后将在URL上连接的字符串上制作它。这是因为特殊字符被识别为HTML标记。为了解决这个问题,我尝试在var payload中编写各自的实体。像这样。

<script>
    var http = new XMLHttpRequest();
    http.onreadystatechange = function(){
        console.log(http.response);    
        };
    var payload = "&lt;script&gt;alert('xss');&lt;/script&gt;";
    http.open("GET","http://localhost:81/vulnerabilities/xss_r/?name="+payload,true);
    http.send();
</script>

HTTP请求成功,但URL被解析为this。这不是我想要的。我希望得到类似name=<script>alert("XSS");</script>的内容。

1 个答案:

答案 0 :(得分:1)

试试这个:

var payload = '<' + 'script>alert("xss");' + '<' + '/script>';