web应用防火墙知识基础知识防火墙

web应用防火墙知识基础知识防火墙
以下是小编辑器为您精心提供的防火墙的基本常识。欢迎阅读。
有各种不同的Web应用防火墙产品在国外市场的几十名,更不用说形式和产品描述。原因很难定义,名称中包含太多的东西。网络的低层(Web应用防火墙是放在第七级)有许多设备。每个设备都有自己独特的功能,如路由器、交换机、防火墙、入侵检测系统、入侵防御系统等,然而,在HTTP的世界中,所有这些功能都被集成到一个设备中:Web应用程序防火墙。
一般来说,Web应用程序防火墙有以下四个方面:
1。审计设备:用于拦截所有HTTP数据或仅满足某些规则的会话。
2。访问控制设备:用于控制对Web应用程序的访问,包括主动和被动两种安全模式
三.架构/网络设计工具:在反向代理模式下运行时,它们用于分配函数、集中控制、虚拟基础设施等。
4、Web应用程序增强工具:这些功能增强受保护Web应用程序的安全性。它不仅可以屏蔽Web应用程序固有的弱点,而且可以保护web应用程序编程错误所带来的潜在安全隐患。
然而,有必要指出不是每一个被称为Web应用程序防火墙的设备都同时具有上述四个功能。
由于Web应用防火墙的多面性,具有不同知识背景的人倾向于关注不同方面的特性。例如,随着网络入侵检测的背景下,人们往往把它作为一种入侵检测装置在HTTP级别运行,与防火墙的背景的人倾向于将它作为一个功能模块的防火墙。另一种理解来自深度检测防火墙这个词。他们认为深度检测防火墙是一个相当于Web应用防火墙设备。然而,尽管两装置有一定的相似性,差异非常大,深度检测防火墙通常工作在第三水平和TWeb级别更高,而Web应用程序防火墙在第七级处理HTTP服务支持它。
直接改变Web代码来解决安全问题是毫无疑问的,但并不那么容易。
因为它是系统安全性能可以通过改变Web应用代码增强争议。而现实是更复杂:
要保证100%的安全是不可能的,一个人有限的能力难免会犯错误。
绝大多数情况下,100%的安全性是没有多少人的。在今天的现实生活中,那些领导应用程序开发的人更多地关注功能而不是安全。这个想法正在改变,但它只是有点慢。
它是一个复杂的系统,通常包含第三方产品(组件、库),它们的安全性能是未知的,如果产品的来源是机密的,那么你必须依赖供应商提供一个补丁,即使源代码在某些情况下是开放的,你也没有精力去修复它们。
我们必须使用系统安全隐患,尽管旧系统不能改进。
因此,为了达到最佳效果,我们需要共同努力:一方面,必须提高管理者和开发人员的安全意识;另一方面,我们应该尽可能地提高应用系统的安全性。
web应用防火墙的特点
异常检测协议
如果你读过各种各样的RFC,你会发现那是重申主题。大多数RFC建议保守使用协议时,不接受其他人的协议。这是Web服务器,但这一行为同时开启所有的攻击者的门。几乎所有的WAF执行HTTP请求一些例外,并拒绝遵守HTTP标准。此外,它只允许HTTP协议的一些选项可以通过,从而降低攻击范围。甚至,有些WAF可以严格限制在HTTP协议过松或毁灭的选择。
增强的输入验证
一些常见的Web安全问题源于对Web设计模型的误解。其他的程序员来自浏览器是值得信赖的程序员,许多Web程序员使用Javascript在他们的浏览器上实现输入验证,浏览器只是一个简单的用户控制工具,因此攻击者可以很容易地绕过输入验证并直接向Web应用服务器输入恶意代码。
解决上述问题的正确方法是验证服务器端的输入,如果该方法未实现,还可以增加客户端与应用服务器之间的代理,让代理执行Web页面上嵌入的Javascript,实现输入验证。
负安全模型与正安全模型
设置防火墙规则的人可能会遇到一个建议,它允许已知的安全流量,拒绝所有其他访问。这是一个很好的正安全模型。相反,负安全模型允许所有默认访问,并且只有一些已知的危险的流量模式。
每个安全模型都有它自己的问题:
负安全模型:什么是危险的
正安全模型:什么是安全的
消极安全模式通常使用较多。识别危险模式和配置自己的系统禁止它。操作简单和有趣的,但不是很安全。它依赖于人的意识的危险,如果存在问题,它不知道(这是常见的),它会让攻击者的趁这机会。
积极的安全模式(也被称为白名单)看起来像一个更好的方式来制定战略,配置防火墙策略非常适合。在Web应用安全领域,主动安全模式概括为一对应用程序的每个脚本枚举。每个枚举的脚本,你需要建立相应的列表中显示该表的内容如下:
允许请求(例如,获取POST或POST)
允许的内容类型
允许内容长度
允许参数
指定参数和可选参数
参数类型(例如,文本或整数)
附加参数限制
上面的列表只是一个例子,和实际的积极安全模式通常包括更多的元素。它试图完成,程序员应该做的内部从外面工作:验证提交给Web应用程序的每一个信息位。如果这需要时间,要用一种积极的安全模型,这是一个很好的选择这一模式的难点在于应用模式将随着应用的发展变化。每次你添加一个新的脚本或应用程序中的旧剧本的变化,你需要更新的模式。然而,它适用于稳定的保护,没有旧的应用程序。
自动化开发策略可以解决上述问题。
WAF能够监控交通流量数据,并根据自动配置策略,有些产品可以实时进行这样的工作。
通过白名单,你可以确定那特定的IP地址是可信的,基于流程,配置WAF,更新安全策略
如果你通过一个全面的衰减测试(行为模拟右)创建应用程序,并在WAF在监控执行测试时,那么WAF可以自动生成策略。
可以看出,没有一种模型是完全令人满意的,负安全模式适合处理已知问题,而正安全模式适用于稳定的Web应用程序。
及时修补
积极的安全模型是更好的理论,因为浏览器和Web应用程序之间的通信协议以及定义通过HTML规范。当前Web开发语言可以处理多个参数的HTTP请求。因为这些参数在Web应用防火墙可见,Web应用防火墙可以分析这些参数来确定请求是否被允许。,
当一个应用程序中的漏洞被发现在大多数情况下,我们会尽可能在代码修复。受多种因素的影响,如应用的规模,无论是开发商、法律问题等,开发补丁的过程可能需要几分钟,或直到无限长的时间。这个时间是攻击者发动攻击的一个很好的机会。
如果开发人员可以在很短的时间在代码中的错误,你不必担心。但是如果你解决这个需要花费几天甚至几周的Web应用防火墙维修的理想工具是解决问题:给定一个足够好的WAF和漏洞的安全专家的信息,他可以在不到一个小时的时间来屏蔽这个漏洞。当然,屏蔽孔的方式是不完美的,而没有相应的补丁安装作为一个安全的威胁,但没有任何选择,任何保护措施都比没有保护措施。
由于应用程序的通信协议是规范的,所以适时补丁原则可以更好地应用于基于XML的应用程序。
基于规则的保护与基于异常的保护
市场上的产品大多数是基于规则的WAF,原则是每个会议都要通过一系列的测试。每个测试都由若干检测规则组成。如果测试失败,该请求将被视为非法并被拒绝。
基于规则的WAFS是很容易建立,能有效地防止已知的安全问题,这将是更方便的使用它的时候,我们有一个自定义的防御策略,而是因为他们必须首先确定每个威胁的特点,它们是由一个强大的规则database.waf制造商支持维护这个数据库,他们想提供自动更新工具。
这种方法不能有效地保护Web应用程序或零日漏洞(攻击者没有公开的漏洞),这些威胁比例外的WAF更有效。
异常保护的基本思想是建立保护层。这个保护层可以建立基于检测的合法应用数据的统计模型,并在此模型的基础上,确定实际的通信数据的攻击。在理论上,一旦施工是成功的,这基于异常的系统应该能够检测到任何异常。有了它,我们不再需要常规的数据库和零日攻击不再是一个问题。但基于异常保护系统难以建立,所以它是不常见的。因为用户不了解它的工作原理和不相信它,它不是基于WAF规则广泛应用。
状态管理
HTTP协议的无状态性有很多对Web应用安全的负面影响。会议只能在应用层实现,但许多应用的附加功能只能满足商业需求,而不考虑安全因素,Web应用防火墙侧重于会话的保护,其功能包括:
力的登录页。在大多数网站,你可以访问任何网址,你知道一个网站,通常是攻击者添加到defense.waf容易判断用户是否是第一次访问,将请求重定向到登录页的默认记录事件。
每个用户会话分别被检测出来,如果您能区分不同的会话,这将带来无限的可能性。例如,我们可以监视登陆请求的频率和用户的页面跳转。我们可以通过检测用户的整个操作来更容易地识别攻击。
和应对暴力攻击识别。通常不检测Web应用网络暴力攻击。与国家管理模式,WAF能够检测异常事件(如着陆失败)和处理限值。在这一点上,它可以增加更多的身份验证请求的时候,这个细微的变化不是由用户的感觉,但它足以应对自动攻击脚本。如果认证脚本需要在50毫秒内完成,可以发出大约每秒20个请求。如果你加一点延迟,例如,一秒的延迟,这将减少请求少于一次同时,对进一步检测预警将由一个相当好的防御。
会话超时的实现。该会话将在默认时间内无效,用户将需要重新验证。用户在长时间不被请求时将自动退出登录。
检测和会话劫持防御。在许多情况下,会话劫持更改IP地址和请求数据(一个HTTP请求标头将不同)。状态监测工具可以检测到这些异常和防止非法应用的发生。在这种情况下,会话将被终止,用户需要重新注册,并警告日志信息记录。
Only links included in the previous request response are allowed.Some of the WAF are very strict, allowing only users to access the links in the previous request to return to the page.It looks like an interesting feature, but it's hard to implement.One problem is that it does not allow users to use multiple browser windows, and the other is that it fails to make applications that use Javascript to automatically establish connections.
其他防护技术
WAF的其他安全增强功能是用来解决Web程序员在输入数据中的信任问题。例如:隐藏表单域保护。有时,内部应用程序的数据是隐藏的表单变量实现的,他们是不是真的隐藏。程序员通常使用隐藏的表单变量来保存执行状态和发送数据用户保证这些数据不会被修改时,他们回来了。这是一个复杂而繁琐的过程,而WAF经常使用的加密签名技术来解决它。
饼干的保护。类似于隐藏的窗体,饼干经常用来传递用户的个人数据,但不一样的是,一些饼干可能包含敏感的data.wafs通常加密整个内容,或虚拟化的整个机制。使用这个设置,用户只能看到饼干令牌(如会话令牌),使饼干安全地存储在WAF
防入侵避免技术,IDS对网络攻击是网络攻防技术问题。有太多的方式重写HTTP请求输入数据(攻击数据),以及各种改写请求可以逃避IDS的检测。在这方面,一个完整的理解HTTP是一个很大的改进。例如,每次一个WAF可以看到整个HTTP请求,所有类型的HTTP请求是可以避免的。因为我们有一个很好的了解HTTP协议,我们可以把动态请求分别静态请求,所以我们不会花很多时间来保护静态数据,在不被攻击。这样,WAF可以有足够的计算能力来处理各种攻防技术方法,这是耗时的NIDSs。
响应监测和信息披露的保护。信息披露的保护是一个叫我们给监控HTTP输出数据。原则上,它要求监测一样,其目的是监测可疑的输出和防止可疑的HTTP输出数据到达用户。最有可能的应用模式是监控信用卡号码和社会安全号码。此外,该技术的另一应用是找到成功入侵的迹象。因为一个有经验的攻击者总是编码信息以防止监控,很难阻止这样的确定和熟练的攻击者获得信息。然而,这项技术可以起到保护作用在攻击者不充分控制服务器,只尝试Web应用程序的安全漏洞。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部