概述
我写了一篇博客文章这个插件使用的技术在这里一会儿。 许多WAF设备可以被欺骗以相信请求来自其自身,并且因此如果存在特定头部则是可信的。 旁路方法的基本知识可以在这里的HP博客文章中找到。
我已经实现匹配/替换规则在Burp自动添加这些标题发送到受WAFs保护的网站的请求一段时间,但决定创建一个插件,可以用于添加标题到活动扫描,中继器请求,入侵者请求,等等。我从Fishnet Security发现了这篇文章,确实得到了滚动。
首先,我在Python中实现了插件,因为这是快速和容易,我实际上需要在最近的项目上很快。 然后我做了一些快速研究如何实现它作为一个Java扩展,以提高效率。
要使用此插件添加必要的标题,首先需要下载Python版本的插件,Java版本的插件或Java源代码并自行编译。 一旦你有插件,启动Burp并导航到“Extender->扩展”,然后单击“添加”按钮。 如果使用Java插件,请选择“Java”的扩展类型,如果使用Python版本,请选择“Python”,然后导航到扩展路径。 配置应该看起来像:
现在应该加载插件,并显示如下:
现在,您需要导航到“选项 - >会话”,然后单击“会话处理规则”配置部分的“添加”按钮,如下所示:
为规则命名,然后单击“规则操作”部分中的“添加”按钮,并选择“调用扩展扩展名”,如下所示:
您应该能够在下拉框中选择“Bypass WAF”,如下所示:
单击“确定”,然后选择“范围”选项卡。 启用您要在扩展的范围内的所有工具,然后设置范围。 我喜欢为所有工具启用作用域,并将请求的作用域限制为已添加到套件作用域的作用域,如下所示:
Bypass WAF包含以下功能:
大多数新功能都是基于Ivan Ristic的WAF旁路工作在这里和这里 。 每个功能的描述如下:
- 用户可以修改在每个请求中发送的X-Originating-IP,X-Forwarded-For,X-Remote-IP,X-Remote-Addr头。 这可能是顶部绕过技术的工具。 将WAF配置为信任自己(127.0.0.1)或上游代理设备是常见的,这是此绕过目标。
- “Content-Type”头部在每个请求中可以保持不变,从所有请求中删除,或者修改为每个请求的许多其他选项之一。 一些WAF将仅仅基于已知内容类型来解码/评估请求,这个特征针对该弱点。
- 也可以修改“主机”标题。 配置不当的WAF可能配置为仅根据此标头中找到的主机的正确FQDN来评估请求,这是此绕过目标。
- 请求类型选项允许Burp用户仅对“GET”或“POST”的给定请求方法使用剩余的旁路技术,或将其应用于所有请求。
- 路径注入功能可以不修改请求,注入随机路径信息信息(/path/to/example.php/randomvalue?restofquery),或注入随机路径参数(/path/to/example.php;randomparam=randomvalue? resetofquery)。 这可以用于绕过依赖于路径信息的编写不良的规则。
- 路径混淆功能将路径中的最后一个正斜杠修改为随机值,或者默认情况下不做任何操作。 最后一个斜杠可以修改为许多值中的一个,在许多情况下导致仍然有效的请求,但是可以绕过依赖于路径信息的写得不好的WAF规则。
- 参数混淆特征是语言特定的。 PHP将在每个参数的开始处丢弃一个+,但是可能会为特定的参数名称写入写得不好的WAF规则,因此在开头忽略带有+的参数。 类似地,ASP在每个参数的开始处丢弃一个%。
- “设置配置”按钮激活您选择的所有设置。
所有这些功能可以组合以提供多个旁路选项。 我打算添加以下功能,至少在未来的版本:
- HTTP参数污染 - 对GET / POST参数自动执行HPP攻击。
- HTTP请求偷运 - 对每个请求自动执行HTTP请求走私攻击,其中将虚拟请求添加到开头,并在结尾添加真实(走私)请求。
我已经快速添加功能,这是非常可能的,以上将在代码中的时间,任何人实际上读这个。
原文地址:https://www.codewatch.org/blog/?p=408
最后
以上就是落后路人为你收集整理的Bypass WAF:Burp插件绕过一些WAF设备的全部内容,希望文章能够帮你解决Bypass WAF:Burp插件绕过一些WAF设备所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复