Web应用防火墙中分布式拒绝服务攻击防范策略
2014-12-22洪燕璇
洪燕璇
摘 要:对Web应用防火墙中分布式拒绝服务攻击防范策略进行了探讨,对应用层分布式拒绝攻击检测防御技术的研究现状进行了详细的阐述,并重点研究了可用于检测和防御基于HTTP协议的分布式拒绝攻击的方法,以供参考。
关键词:Web应用;防火墙;防御技术;防范策略
中图分类号:TP393.08 文献标识码:A 文章编号:2095-6835(2014)23-0149-02
Web应用防火墙,是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。而分布式拒绝服务攻击是近年来出现的一种网络攻击,它给网络的正常运行带来了极大的危害。因此,为了保障web应用的安全,就需要对分布式拒绝攻击进行防范。基于此,本文就web应用防火墙中分布式拒绝服务攻击防范策略进行了探讨。
1 应用层DDoS攻击检测防御技术研究现状
根据对应用层DDoS攻击检测防御方法的研究分析,我们可以把这些方法分为两类,分别是平稳背景流下的APP-Flood攻击检测防御方法和突发背景流下的APP-Flood攻击检测防御方法。
平稳背景流下的APP-Flood攻击检测方法主要有:①Lu Wei-Zhou等利用隐半马尔可夫模型来描述Web服务器的模式,并检测基于应用层HTTP协议的DDoS攻击。他们先用大量合法的请求序列来训练HsMM,并用这个合法的模型来检测每个请求序列。当网络流量的或然概率值偏离正常区间时,就认为这是一个攻击。②基于时间序列分析的Web服务器DDoS攻击检测方法。③基于可信度的APP-DDoS攻击防御方法。
突发背景流下的APP-Flood攻击检测防御方法主要有基于Web用户浏览行为的统计异常检测方法、可以同时用于防御突发流和平稳流下的APP-Flood攻击的方法。
2 HTTP-Flood攻击分析
基于应用层协议的DDoS攻击,是一类利用TCP/IP协议栈高层协议的漏洞发起的攻击。相对于低层协议而言,高层协议具有多样性和复杂性的特征,同时,由于高层协议的应用离不开低层协议的支持,所以基于髙层协议的DDoS攻击的低层协议特征完全正常,传统的基于低层协议特征的检测方法将不再适用,这使得基于应用层的DDoS攻击的破坏力远大于传统网络层DDoS攻击。
2.1 HTTP协议
超文本传输协议是一个属于应用层的面向对象的协议,它一般用于从Web服务器端传送超文本标记语言文件到客户端浏览器,并且定义了客户端浏览器和Web服务器之间的会话过程,是互联网上最常见的协议之一。
2.2 HTTP-Flood攻击的原理和分类
HTTP-Flood攻击的主要目标是Web服务上的网页。攻击时,攻击者向服务器发送大量的高频请求,使服务器忙于向攻击者提供资源而无法响应其他合法用户的服务请求。攻击过程中的单个请求基本与正常的HTTP访问过程一样,但当海量的单个请求同时发生时,HTTP-Flood攻击也就随之产生了,造成的后果就是Web服务器拒绝服务。HTTP-Flood攻击一般可分为两类:①请求泛洪攻击。这种攻击形式是通过发送大量合法的HTTP请求来占用目标网络的带宽或者消耗服务器的资源,使正常用户无法进行Web访问。②高消耗请求攻击。这种攻击的形式就是攻击者通过不断访问Web服务器上高耗资源的网页,造成服务器的资源被消耗殆尽,从而拒绝服务。
2.3 HTTP-Flood与其他DDoS攻击的对比分析
2.3.1 与SYN-Flood攻击的对比分析
SYN-Flood攻击是目前最流行的DDoS攻击之一,它的主要原理是利用TCP协议来伪造客户端与攻击目标建立TCP连
接,但只是发送SYN包,而不建立完整的连接,让目标主机维持大量的半开连接而消耗掉自身的资源。
2.3.2 与LDoS攻击的对比分析
低速率拒绝服务攻击是一类新型攻击,主要是利用端系统或网络中常见的自适应机制所存在的安全漏洞,通过低速率周期性攻击流,以更高的攻击效率对受害者进行破坏。
2.3.3 与UDP-Flood攻击的对比分析
UDP-Flood攻击是基于UDP协议的DDoS攻击,与HTTP-Flood攻击最大的区别就是,它可以伪造源IP进行攻击,并且它们基于的协议不一样,一个是UDP协议,另外一个是TCP之上的HTTP协议。
3 DDoS攻击防御技术的特点
3.1 主机策略阈值配置
拒绝服务攻击中防御模块策略阈值可分为单包策略、安全域全局策略和主机策略3类。其中,主机策略配置的对象是被保护的IP地址。首先配置的内容为该安全域内IP地址的策略阈值。有需要时,可以单独修改安全域内部某IP地址的阈值。
当安全域内服务器所提供的服务相差较大,不能用同一种策略阈值保护时,应该对单台服务器作出调整。
3.2 策略阈值自学习
为使用户了解被保护对象的流量情况,并能方便、准确地配置策略阈值,内核拒绝服务攻击防御模块提供了策略阈值的学习接口。学习素材由内核模块通过接口发送给用户态的自学习程序,自学习程序以被保护主机的IP为单位学习各种策略阈值。默认状态下,被保护主机的IP学习状态为关闭,用户可根据需要开启需要被保护主机的IP学习状态。当被保护主机的IP学习状态开启时,内核模块将持续向用户态的学习进程发送数据,最终由阈值学习进程计算得出参考阈值。
阈值学习过程进程最快可在1 h内得出阈值学习结果。但考虑到每种服务在不同时间段的流量变化较大,所以每种阈值的学习都以天为单位,同时,用户可以査看和参考前N天的策略阈值。自学习的阈值涵盖所有用户可配置的策略阈值,插件模块也可以通过自学习功能得到参考阈值。
自学习模块具有极高的实际应用价值,解决了原有策略阈值需要反复调整才能稳定的问题。策略阈值的合理配置关系到判断攻击强度的准确性。在未知的网络环境中,应当及时、准确地得出阈值;否则,基于阈值的攻击防御算法的精确度将大打折扣。
3.3 IP信誉学习机制
IP信誉机制是拒绝服务攻击防御模块中一种重要的防御机制。在遭受大流量攻击时,反复检查和计算将消耗很多资源,严重时将影响正常用户的数据包转发速度。使用IP信用机制后,能有效保证正常用户连接的带宽,省略了复杂的检査和计算过程,节省了系统资源;同时,IP信用单元记录了真实IP地址的跳数,以防止真实的IP地址被攻击流量冒用。
3.4 IP认证机制
1P认证机制是判断源IP是否真实的过程。判断原理是通过TCP超时时间间隔,检查SYN或ACK重传的间隔是否正确。
3.5 QoS限速
为了拒绝服务攻击,防御模块使用了简单令牌桶算法来实现流量限速。QoS限速模块实现了与其他模块的低耦合状态,可以为其他模块提供以pps和bps为单位的限流量功能。在拒绝服务攻击防御模块中,每种策略阈值都会触发忽略、丢弃和限速3种动作,这解决了在拒绝服务攻击防御过程中有可能出现的误判或漏判问题。
3.6 拒绝服务攻击插件
设计实现插件模块的主要原因是为了满足不同客户对拒绝服务攻击防御模块功能组合的特殊需求。插件模块是单独编写的内核模块,以挂载和拒绝服务攻击防御模块中检测点的方式来独立完成特定的验证和保护工作。
拒绝服务攻击模块中的3个检测点,因其位置不同而具有不同的检测功能。单包检测点在流程中位置靠前,用来做单包特征检测,不需考虑传输协议或会话等。有连接的检测点在会话处理流程之后,主要用来检测能够成功建立会话的TCP协议数据;没有连接的检测点用来检测非TCP的其他协议。
4 HTTP攻击防御算法
Web服务器遭到拒绝服务攻击后出现异常情况的主要表现有:Web服务器瞬时链接数量急剧增多、访问Web服务器的IP数量急剧增多、部分IP访问的频率非常快、部分IP请求URL非常单一或者规律性非常明显、服务器资源或者网络资源被消耗殆尽。
5 Puzzle验证算法
Puzzle算法的原理是劫持请求方会话,并向其发送验证页面,用户需要在页面答对问题才能通过验证。验证过程需要策略阈值的触发。验证过程开始后,HTTP保护模块代替Web服务器向请求方发送页面,且服务器原会话被重置。
用户看到验证页面后,需要回答页面中的数学问题,并将答案提交。如果HTTP保护模块收到了正确答案,则该用户验证通过;如果会话超时或者回答错误次数超过定值后,则该用户验证失败。
如果用户验证正确,HTTP保护模块将发送一份带有原请求URL的自动跳转页面,用户将自动跳转到原先请求的页面;如果用户多次验证错误,用户的页面请求将被阻断,用户的IP信誉降低,并等待HTTP保护策略的超时。
HTTP Puzzle算法能有效验证僵尸主机和CC的攻击,对恶意代码发起的页面请求和GET/POST洪水攻击有较好的保护和验证效果。HTTP Puzzle算法的优点是验证机制严格,可以有效抑制多数HTTP的攻击,缺点是需要请求方配合,容易造成误操作。
6 结束语
综上所述,分布式拒绝服务攻击是近年来出现的一种网络攻击,它给网络的正常运行带来了极大的危害。而在理论上,除非修改TCP/IP协议的规范,否则是没有办法彻底解决分布式拒绝攻击问题的。因此,我们需要及时采取防范策略,以保障Web应用的安全。
参考文献
[1]吴伟姣.分布式拒绝服务攻击与防范策略详探[J].中国科技信息,2008(01).
[2]郑维铭.分布式拒绝服务攻击原理及实验[J].才智,2009(30).
〔编辑:王霞〕
Web Application Firewall in Distributed Denial of Service Attack Prevention Strategy
Hong Yanxuan
Abstract: The Web application firewall in distributed denial of service attack prevention strategies were discussed, distributed denial of the application layer attack detection defense technology research status carried out in detail, and can be used to focus on the detection and prevention based on the HTTP protocol distributed denial of attack methods, for reference.
Key words: Web application; firewall; defense technology; prevention strategies