Snuck - 自动XSS过滤器旁注工具
Posted 黑白之道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Snuck - 自动XSS过滤器旁注工具相关的知识,希望对你有一定的参考价值。
Snuck是一个用Java编写的开源工具,其目标是通过在反射上下文的基础上专门化注入来显着测试给定的XSS过滤器。
它采用的方法基于对注入反射上下文的检查,并依赖于一组用于过滤器规避的专用和混淆的攻击向量。此外,XSS测试是在浏览器中执行的,真实的Web浏览器是在复制攻击者和可能的受害者行为的驱动下驱动的。
Snuck与典型的Web安全扫描程序完全不同,它基本上试图通过专门化注入来破坏给定的XSS过滤器,以提高成功率。基于反射上下文选择攻击向量,反射上下文是注入落入反射网页的DOM的确切点。可以通过Selenium Web Driver访问页面的DOM,Selenium Web Driver是一个自动化框架,允许在Web浏览器中复制操作。
由于在“ 激活 ” XSS过滤器之前可能涉及许多步骤,因此应填充XML配置文件,以使Snuck知道它需要针对测试的Web应用程序执行的步骤。实际上,该方法类似于iSTAR的方法,但它侧重于一个特定的XSS过滤器。
这个怎么运作场景I:存储的XSS我们假设有一个电子商务网站,允许卖家修改其商品的描述。项目的描述是公开可访问的,因此在XSS过滤器错误的情况下导致存储XSS。在登陆反射页面之前,测试XSS过滤器需要执行三个步骤。由于注入反映在P html元素中,因此该工具将反转过滤器并在最终报告中报告允许的标记和属性。显然,也报告了检测到的XSS。请参阅下图以更好地了解上下文。
在上述情况下,Snuck需要知道将注入页面(即提供恶意有效负载的网页)连接到反射网页所需的操作,即反映有效负载的网页,可以通过传递XML配置文件来完成此任务。
此外,由于显然需要登录操作来管理我们的项目,因此需要另一个XML配置文件。
基本上,该工具将首先对用户提供的描述中使用的HTML过滤器进行逆向工程,然后它将开始注入多个攻击向量并检查是否触发了XSS - 这里的重点是抓取警报对话框窗口以便决定注射是否成功; 这意味着误报率等于0,因为在使用的Web浏览器抓取警报对话框窗口时会报告漏洞。
场景II:存储的XSS我们假设有一个博客,允许访问者发表评论。与前一种情况一样,我们的目标是绕过Web应用程序对用户生成的内容使用的过滤器。由于该工具需要填充某些字段并执行攻击,因此实际上与模糊方法相当。
场景III:反映的XS这里我们提出一个基本场景,其中HTTP GET参数的值反映在网页中,特别是在输入元素的属性值中,其类型被隐藏。像往常一样,我们想测试注入此参数是否会导致反映的XSS漏洞。
如果要停止测试,只需按Ctrl C. 如果您这样做,该工具将在stdout中打印到目前为止发现的成功注射。
下载链接:https://github.com/mauro-g/snuck/releases
你可能喜欢
以上是关于Snuck - 自动XSS过滤器旁注工具的主要内容,如果未能解决你的问题,请参考以下文章