自 XSS 和反射 XSS 有什么区别? 如果我发现一个XSS漏洞,我如何知道它是自XSS还是反射XSS? 我尝试在谷歌上阅读很多文章,但仍然感到困惑。 提前感谢!
当 url 地址中包含的用户输入反映在页面源中时,会发生反射的 XSS un-unescape 。
现在,很多东西都可以由用户输入,例如您在搜索表单中的输入,网址本身。一个例子是
https://vulnerable.com/<script>alert(1)</script>
让我们说,在访问URL之后,您在浏览器中检查页面源代码,然后在页面源代码中的某处看到<script>alert(1)</script>
。这是一个反射的xss,可用于利用其他用户,因为如果缺少httponly标志,访问该链接的任何人都将被触发xss并窃取其cookie
自我 XSS自我 Xss 是在提交有效负载的用户的上下文中执行的 xss。假设Web应用程序具有配置文件功能,并且在配置文件功能中,您可以选择 指定昵称 。现在在此Web应用程序中,您无法查看其他用户配置文件,这意味着他们无法使其他用户查看您的个人资料。大多数银行应用程序都是这样的。现在,如果昵称参数容易受到 xss 的攻击,那么这里的 xss 将是 self xss,因为只有您可以查看您的用户配置文件,并且 xss 只会在您自己的上下文中执行。您可以同意窃取自己的 cookie 没有任何影响
反射式XSS漏洞通常是指您可以诱使人们点击的链接 - 如果用户关注它们,则执行javascript,例如https://www.example.com/example?search=<script>alert(1);</script>
自身 XSS 漏洞通常要求用户键入内容,例如将<script>alert(1);</script>
放入未从 URL 或表单参数填充值的表单字段中。因此,您只能用自身 XSS 漏洞影响自己,除非您有一个非常容易上当的用户:)