今天在看大佬文章的时候,发现一个xss的在线网站:地址。
事情就从这里开始啦!!!
level1 : Hello, world of XSS
第一关非常简单,是产生xss漏洞最为常见的原因,用户的输入未经任何转义直接包含显示在页面中。
只要输入<script>alert()</script>即可。
level2 : Persistence is Key
Web应用程序通常将用户数据保存在服务器端,并且越来越多地将客户端数据库放在客户端数据库中,然后将其显示给用户。无论用户可以控制的数据来自哪里,都应该谨慎处理。这个级别显示了在复杂的应用程序中可以很容易地引入XSS bug。Level2是一个利用存储型XSS漏洞的题目, <script></script>标签都被过滤不能生效, 使用其他标签就可以绕过了。参考:
<img src='N' οnerrοr=alert(document.domain)>
level3 : That sinking feeling...
正如在第二关看到的,一些常见的JS函数是执行接收器,这意味着它们将导致浏览器执行出现在其输入中的任何脚本。 有时候,这个事实是被更高层次在后台运行的底层API所使用。
客户端从URL读取location.hash未进行安全过滤转义, html += "<img src='/static/level3/cloud" + num + ".jpg' />";,在JS上下文语义中未对变量num进行正确转义,闭合签名的