我对XSS攻击的理解主要集中在通过表单输入恶意输入的人身上(持续的XSS攻击)。
但是我试图理解非持续性。这是一个例子(显然警报可以代替更邪恶的东西......)
http://localhost/MyProject/action.do?Title=<script>alert('XSS');</script>
答案 0 :(得分:14)
该链接的一个问题是,<tags>
通常不允许在没有URL编码的网址中使用http://localhost/MyProject/action.do?Title=%3Cscript%3Ealert%28%27XSS%27%29%3B%3C%2Fscript%3E%
。因此邮寄链接或发布它对你没有多大帮助。
更真实的URL编码形式是..
Title
点击此网址后,目标网络服务器将取消<script>alert('XSS');</script>
值,如果...
{{1}}
...按原样编写而不是HTML转义到页面,这绝对是XSS。
答案 1 :(得分:9)
是的,考虑到您是否已登录,这些脚本还可以访问您的Cookie并将其发送到任何地方。
答案 2 :(得分:4)
这绝对是一个漏洞,如果不出意外,您可以将带有此类XSS代码的链接发送给某人。
答案 3 :(得分:3)
我没有评论杰夫阿特伍德答案的声誉,所以我在这里不同意。像这样的链接当然可以邮寄并用于利用易受反映的XSS的网站。我使用Gmail和我控制的网站对其进行了测试。
也许编码是在后台完成的,但无论如何,我能够输入链接,通过电子邮件发送,然后单击链接并使漏洞利用起作用。此外,在我尝试的每个浏览器中,我都可以直接键入有效负载而无需编码,并且可以触发脚本。
是的,该代码是“有效的XSS”,如果您的网站触发了该javascript,那么您的网站很容易受到反映的XSS攻击。
答案 4 :(得分:0)
是的,这是一个XSS漏洞。 Tittle 字符串未进行清理,并在呈现之前显示为原样。 使用像OWASP Stinger这样的Web应用程序防火墙可以防止XSS
答案 5 :(得分:0)
放置警报是测试跨站点脚本或XSS的应用程序漏洞的最突出和广泛使用的方法。如果此类URL显示为警报,则很可能是相同的URL -
在内部将客户重定向到恶意网站或
会将从Cookie或会话中复制的信息发送给某人。
并且客户会觉得它是您信任的站点,因为他将继续在URL中看到可信站点域。