论文部分内容阅读
拒绝服务攻击(DoS attack)领域的研究已经进行了多年,但是它仍然是当前因特网中面临的重要威胁。传统拒绝服务攻击需要发送高速率的攻击流,没有隐蔽性可言。然而,近年来提出了几种低速率的拒绝服务攻击方式,大幅度降低了需要的发送的攻击速率,从而有效提高了其隐蔽性。低速率拒绝服务攻击首先被提出是作为shrew攻击,之后另外几种攻击方式也被提出,包括RoQ攻击以及针对应用层服务器的LoRDAS攻击等。
本文主要研究对象即LoRDAS攻击。LoRDAS攻击的目标是一般的应用层服务器,它的基本策略是抢占并导致服务器上用于临时存放用户请求的缓存队列的溢出。其实现低速率的关键机制是预测缓存队列位置的释放时间,并有的放矢地发送少量请求进行抢占。对攻击者来说,低速率攻击方式的优越性有两方面:首先,发动攻击所需要的资源更少,容易发起攻击;其次,攻击数据流有更好的隐蔽性,能较容易的穿过传统的防御措施。本文分析了LoRDAS攻击的方法策略,评估了以低速率数据流发动针对应用层服务器的拒绝服务攻击的可能性,并具体分析了针对典型HTTP服务器的攻击手段。通过分析攻击基本原理以及对攻击策略和设计实现,构造了详细的攻击原型。另一方面,本文建立了针对LoRDAS攻击方式的数学模型,它是一种基于排队论的生死过程模型,能够准确地对攻击进行过程性的描述。其后,通过计算此过程的平稳概率分布,得到了攻击对目标系统可能造成的影响程度的评估方法,并找到了能够影响攻击效果的一些主要参数。
在对攻击原理和方式有了充分的分析之后,本文提出了几种针对这种攻击的防御方法。其防御的技术实现都是通过改变应用服务器上对与服务请求的应答方式来实现的。对于每种防御方法,深入分析了其具体实现细节,讨论了每种方法各自的优缺点。通过比较几种方法,找出了能够最大程度减弱攻击效果,同时其本身对服务器性能的影响程度最小的防御方法。最后,通过模拟环境和真实环境下的双重实验验证了攻击的可行性和本文提出防御方法的有效性,并给出了防御方法在真实系统中的实施方案。