防范DDoS攻击的流量预警与提示程序开发报告

更新时间:2023-11-11 08:51:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

防范DDoS攻击的流量预警与提示程

序开发报告

程序的预警弹窗

作者 :袁丽欢

导师 : 姜岸、张帅舸、李学军

学校 : 四川省雅安中学

2016年 1 月

版权声明

1、《防范DDoS攻击的流量预警与提示程序开发报告》(以下简称“本报告”)版权归作者所有,包括报告中的文字及图像。

2、读者可以在其他论文或研究报告中引用本报告的内容,但必须注明出处,以及作者。 3、引用本报告的内容,不得修改作者、导师、学校信息,以及该版权声明。 4、未经作者允许,不得出版或大量印发本报告。

5、作者水平有限,错误、疏漏在所难免,请不要编辑内容,发现错误和作者联系。欢迎读者对本报告提出批评建议。

6、该项目已经在四川省第三十一届青少年科技创新大赛中获奖。

联系作者 :

E-mail :1982319643#qq.com(请用@替换邮件地址中的#)

袁丽欢

2016年5月

摘要

本文综述研究DDoS攻击原理和手法的文献,并走访网吧、打印店等局域网用户,确认在DDoS防御的流量预警软件方面,尚待有效开发利用。

通过自己设计并进行模拟DDoS攻击的实验,分析实验样本在遭受DDoS攻击时的症状表现,进行研究,寻找警示提醒的原理、切入点和方法手段。

基于网络上开放源代码的抓包技术,用简单、多线程、安全的Java语言开发防范DDoS攻击的流量预警、提示程序,通过功能强大的Eclipse集成开发环境,设计了友好的原创用户界面,并使这款软件有了实际的运用检验经历。

对已有应用实践过程客观总结,指出该程序的特点优势与进一步开发的方向:

1、 特点优势:该程序重在监控和预警,而非操控主机抵抗DDoS攻击,不会因控制失

误影响主机正常工作,对资源的占用较小。这样可以解决那些配置较差的网络主机难以运行专业防火墙,而使管理员无法及时发现DDoS攻击的问题。

2、 程序尚待完善、深入开发的方面应该还比较多,比如,在给受攻击的用户弹窗提醒

时,转给网警报警;扫描、分析、拦截虚假数据包;进一步兼容服务器操作系统,能适用于大型网络系统的监控与管理等等。

该软件已征得送北京奇虎360科技公司进行测试和安全认证的许可。

关键词 : DDoS防范、Java 、程序设计 、抓包技术 、安全预警 、提示弹窗、开发方

一、文献综述

1、问题的提出

平时在网上浏览一些科技类的新闻报道,经常看到消息称某公司的网络系统遭到大规模的DDoS攻击,导致系统瘫痪,长时间无法正常向用户提供网络服务。因为我自己的电脑也曾经遭受过类似的攻击,于是很好奇,在今天这个跨入互联网+的时代,云计算、网络安全技术已经取得重大突破,对于层出不穷的计算机和网络系统漏洞,有360补天、乌云这一类漏洞响应平台和大量的“白帽团队”在及时检测并协助存在漏洞的厂商修复,通过系统漏洞进行的网络攻击也少有见报道。为什么以前不怎么受人重视的DDoS,会在近几年迅速兴起?是什么样的特点,使它能造成比利用漏洞进行的攻击更严重的影响?有没有成熟的方案可以抵抗和防御DDoS攻击呢?

通过查阅相关书籍资料和网络搜索,我对DDoS攻击以及现有的防御方案有了简单的了解。

2、DDoS攻击

DDoS是英文Distributed Denial Of Service(分布式拒绝服务)的缩写,这种攻击最早可追溯到1996年,在中国2002年开始频繁出现。其前身是拒绝服务攻击(英文缩写为DoS)。

拒绝服务攻击的原理是,攻击者通过各种手段向目标主机发起网络请求,消耗其资源,当受害主机的资源被耗尽,它就会停止响应甚至崩溃,或者发送大量数据包造成网络堵塞,致使合法用户不能够使用该网络主机提供的服务。

举个例子,假设受害服务器的数据处理能力是每秒钟处理1000个数据包,攻击者操控高性能的电脑每秒发送800个左右的数据包,那么受害服务器就会分配大量的系统资源,用于响应他的请求,提供给普通用户的服务资源将大大降低。而网络服务器并不是只向区区几个用户提供服务,这就造成了大部分用户的服务请求无法响应。如果攻击者再增大攻击的强度,那么发送的数据包就达到了它的处理极限,受害服务器就有可能完全崩溃。另外,攻击数据包组成的洪水一般的流量会占满受害服务器的宽带,即便受害服务器可以抵抗,正常访问的流量也将无法进入,这便达到了使其拒绝服务的目的。

但是,要做到以上这些事情,单靠攻击者一台电脑是无法在短时间内完成的,而且网络服务器的性能绝对优于个人电脑,一对一的攻击很多时候难以奏效。通过入侵另一台高性能的网络服务器,然后远程控制它发动攻击,攻击者需要长期了解入侵目标(或称之为:跳板)的信息,并花大量的精力研究其存在的还未被发现的漏洞,才能成功入侵并种植木马,这些对入侵者的水平要求较高。而且大型网络服务器都有专业的管理员维护,配置了入侵检测系统,攻击者很容易暴露自己的行踪。所以,这也使得发动攻击的成本比较高,不适合大范围使用。

近些年,个人电脑日益普及,其性能和宽带都得到了很大的提升,C/S(客户端/服务器)架构技术逐渐发展完善,伴随着这些情况的出现,分布式拒绝服务攻击产生了。所谓分布式,就是攻击者先制作好DOS木马,通过网页挂马或邮件传播等形式感染大量普通用户的电脑。日后,需要发动DDoS攻击时,攻击者就严密的部署和调整这些分布在不同IP地址的计算机,控制它们在同一时间向受害主机发起各种形式的请求,消耗其资源。这样,即使一台个人电脑的攻击效果并不明显,但几百台电脑合力攻击,也会很容易达到目的。

打个比方,如果将受害服务器比作一头大象,将发动攻击的个人电脑比作狼,单独的一 只狼肯定难以制服它,但是在有组织的狼群轮番攻击下,大象也会很快耗尽体力,最终被狼群分食。

另外,与普通利用漏洞进行的网络攻击相比,DDoS攻击拥有的许多特点,使得它更适合互联网时代,比如:

1. 隐蔽性强

由于攻击利用的是分布在各地的个人电脑,如果受害主机的管理员不仔细审查,只会认为这时有大量的用户访问,不会意识到已经遭受了攻击。为了躲避追踪,攻击者会选择专门的代理主机来调度其它发动攻击的傀儡机(或称之为:肉鸡)。也就是说,攻击者可以在任意网络终端向代理主机下达攻击指令,整个攻击过程就由代理主机控制,当然攻击者也会时刻关注攻击进展,及时下达相应的指令。如果攻击遭到追踪,受害方也只会查到代理主机。

2. 成本低廉

大规模僵尸网络(受攻击者控制的计算机群)的组建,降低了发动DDoS 攻击的成本,几百块钱就能租到大量性能强大的傀儡机。另外,DDoS攻击一般不会利用目标系统的任何漏洞,这就免去了攻击前繁琐的的扫描和探测,节省时间,技术难度也不是很高。

3. 威力强大

DDoS是一种暴力的攻击手段。它不像网络漏洞,可以通过系统补丁进行修复,只要有人发动,它就是无法避免的,而且无论成功与否,都会给受害方造成不小的麻烦。所以DDoS攻击至今仍是业界难以解决的网络安全问题之一。

3、DDoS攻击的常见手法

1. SYN Flood

SYN-Flood攻击是当前网络上最为经典的拒绝服务攻击,它利用了TCP协议实现上的一个缺陷,通过向网络服务所在端口发送大量的伪造源地址的数据包,造成目标服务器中的半开连接(两台电脑在建立TCP连接的三次通信过程中,一方发送了TCP连接请求,但还没有得到对方应答的状态,即连接尚未完全建立起来,双方还无法进行数据传输的状态。)队列被占满,从而阻止其他合法用户进行访问。

正常建立TCP连接一般是这样的:客户机向服务器发送请求,服务器接到后返回询问信息,客户端再发送确认信息,二者就能建立可靠连接实现数据传输。而SYN-Flood攻击则不会完成TCP三次通信的第三步,也就是不发送确认连接的信息给服务器。这样,二者无法进行数据传输,但服务器不会立即放弃,它会不停的重试并等待一定的时间后再放弃这个未完成的连接,这段时间叫SYN timeout,大约75秒钟。

由于半开连接的数量有限(很多系统的默认值为1024),如果攻击者大量发送这种伪造源地址的SYN请求,服务器将调用非常多的资源来处理,因为正常用户的请求比率很小,就不会留太多空余的资源去处理普通用户的正常请求,最终该服务器无法正常工作,从而产生拒绝服务的状况。

2. 反射攻击

反射攻击是指攻击者控制傀儡机伪造成受害者的IP向网络上一些IP广播地址发送大量特定数据包,比如Ping回应请求,由于多数的网络主机都会监听该广播地址,当收到一条指向该地址的Ping包以后,全都会向请求包的IP地址回应一条ICMP应答信息。这样一来,傀儡机每发送一个数据包,受害主机都会收到很多的回应包,从而占用双方的系统资源和带宽,影响其对正常用户提供的服务。

而且,反射攻击并不限于Ping请求回应这种方法。值得一提的是,某些服务器上安装了比较厉害的防火墙,只要检测到有远程主机在对它进行入侵扫描就会发送特殊数据包,造成系统瘫痪。如果攻击者利用它们来做反射器,受害服务器拒绝服务的效果会更明显。

本文来源:https://www.bwwdw.com/article/jvsv.html

Top