如何使XSS易受攻击的盒子

时间:2015-04-22 17:38:42

标签: javascript php html

我想做一个小输入框,用户可以在其中提交代码,就像我们提出的那样

    <script>alert("this is an alert")</script>

然后会在页面上弹出一个警告 我需要这个用于教育目的

      <form><input type="text" name="xss"><input type="submit"></form>
    <p>Result: <?= $_GET['xss'] ?></p>

多数民众赞成我尝试了但它不起作用,而且w3c没有涵盖如何使XSS易受攻击的输入

1 个答案:

答案 0 :(得分:0)

有几种方法可以做到这一点。正如一个人建议你确实可以使用eval()。如下所示:

<input type='text' id='vulnBox' value="alert('hello');"/>
<button onclick="eval(document.getElementById('vulnBox').value)">test</button>

这是相应的小提琴示例JSFiddle

如果您的互动更多客户端到服务器,那么您可以在php中使用$ _GET从网址中读取恶意javascript并输出到网页内容中。

所以有人会使用以下网址访问该网页:

yoursite.com?xss=%3Cscript%3Ealert()%3C%2Fscript%3E

并且您的php文件将包含:

<?php echo urldecode($_GET['xss']); ?>

希望这有帮助!