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

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

防范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是英文DistributedDenialOfService(分布式拒绝服务)的缩写,这种攻击最早可追溯到1996年,在中国2002年开始频繁出现。其前身是拒绝服务攻击(英文缩写为DoS)。拒绝服务攻击的原理是,攻击者通过各种手段向目标主机发起网络请求,消耗其资源,当受害主机的资源被耗尽,它就会停止响应甚至崩溃,或者发送大量数据包造成网络堵塞,致使合法用户不能够使用该网络主机提供的服务。举个例子,假设受害服务器的数据处理能力是每秒钟处理1000个数据包,攻击者操控高性能的电脑每秒发送800个左右的数据包,那么受害服务器就会分配大量的系统资源,用于响应他的请求,提供给普通用户的服务资源将大大降低。而网络服务器并不是只向区区几个用户提供服务,这就造成了大部分用户的服务请求无法响应。如果攻击者再增大攻击的强度,那么发送的数据包就达到了它的处理极限,受害服务器就有可能完全崩溃。另外,攻击数据包组成的洪水一般的流量会占满受害服务器的宽带,即便受害服务器可以抵抗,正常访问的流量也将无法进入,这便达到了使其拒绝服务的目的。但是,要做到以上这些事情,单靠攻击者一台电脑是无法在短时间内完成的,而且网络服务器的性能绝对优于个人电脑,一对一的攻击很多时候难以奏效。通过入侵另一台高性能的网络服务器,然后远程控制它发动攻击,攻击者需要长期了解入侵目标(或称之为:跳板)的信息,并花大量的精力研究其存在的还未被发现的漏洞,才能成功入侵并种植木马,这些对入侵者的水平要求较高。而且大型网络服务器都有专业的管理员维护,配置了入侵检测系统,攻击者很容易暴露自己的行踪。所以,这也使得发动攻击的成本比较高,不适合大范围使用。近些年,个人电脑日益普及,其性能和宽带都得到了很大的提升,C/S(客户端/服务器)架构技术逐渐发展完善,伴随着这些情况的出现,分布式拒绝服务攻击产生了。所谓分布式,就是攻击者先制作好DOS木马,通过网页挂马或邮件传播等形式感染大量普通用户的电脑。日后,需要发动DDoS攻击时,攻击者就严密的部署和调整这些分布在不同IP地址的计算机,控制它们在同一时间向受害主机发起各种形式的请求,消耗其资源。这样,即使一台个人电脑的攻击效果并不明显,但几百台电脑合力攻击,也会很容易达到目的。打个比方,如果将受害服务器比作一头大象,将发动攻击的个人电脑比作狼,单独的一只狼肯定难以制服它,但是在有组织的狼群轮番攻击下,大象也会很快耗尽体力,最终被狼群分食。另外,与普通利用漏洞进行的网络攻击相比,DDoS攻击拥有的许多特点,使得它更适合互联网时代,比如:1.隐蔽性强由于攻击利用的是分布在各地的个人电脑,如果受害主机的管理员不仔细审查,只会认为这时有大量的用户访问,不会意识到已经遭受了攻击。为了躲避追踪,攻击者会选择专门的代理主机来调度其它发动攻击的傀儡机(或称之为:肉鸡)。也就是说,攻击者可以在任意网络终端向代理主机下达攻击指令,整个攻击过程就由代理主机控制,当然攻击者也会时刻关注攻击进展,及时下达相应的指令。如果攻击遭到追踪,受害方也只会查到代理主机。2.成本低廉大规模僵尸网络(受攻击者控制的计算机群)的组建,降低了发动DDoS攻击的成本,几百块钱就能租到大量性能强大的傀儡机。另外,DDoS攻击一般不会利用目标系统的任何漏洞,这就免去了攻击前繁琐的的扫描和探测,节省时间,技术难度也不是很高。3.威力强大DDoS是一种暴力的攻击手段。它不像网络漏洞,可以通过系统补丁进行修复,只要有人发动,它就是无法避免的,而且无论成功与否,都会给受害方造成不小的麻烦。所以DDoS攻击至今仍是业界难以解决的网络安全问题之一。3、DDoS攻击的常见手法1.SYNFloodSYN-Flood攻击是当前网络上最为经典的拒绝服务攻击,它利用了TCP协议实现上的一个缺陷,通过向网络服务所在端口发送大量的伪造源地址的数据包,造成目标服务器中的半开连接(两台电脑在建立TCP连接的三次通信过程中,一方发送了TCP连接请求,但还没有得到对方应答的状态,即连接尚未完全建立起来,双方还无法进行数据传输的状态。)队列被占满,从而阻止其他合法用户进行访问。正常建立TCP连接一般是这样的:客户机向服务器发送请求,服务器接到后返回询问信息,客户端再发送确认信息,二者就能建立可靠连接实现数据传输。而SYN-Flood攻击则不会完成TCP三次通信的第三步,也就是不发送确认连接的信息给服务器。这样,二者无法进行数据传输,但服务器不会立即放弃,它会不停的重试并等待一定的时间后再放弃这个未完成的连接,这段时间叫SYNtimeout,大约75秒钟。由于半开连接的数量有限(很多系统的默认值为1024),如果攻击者大量发送这种伪造源地址的SYN请求,服务器将调用非常多的资源来处理,因为正常用户的请求比率很小,就不会留太多空余的资源去处理普通用户的正常请求,最终该服务器无法正常工作,从而产生拒绝服务的状况。2.反射攻击反射攻击是指攻击者控制傀儡机伪造成受害者的IP向网络上一些IP广播地址发送大量特定数据包,比如Ping回应请求,由于多数的网络主机都会监听该广播地址,当收到一条指向该地址的Ping包以后,全都会向请求包的IP地址回应一条ICMP应答信息。这样一来,傀儡机每发送一个数据包,受害主机都会收到很多的回应包,从而占用双方的系统资源和带宽,影响其对正常用户提供的服务。而且,反射攻击并不限于Ping请求回应这种方法。值得一提的是,某些服务器上安装了比较厉害的防火墙,只要检测到有远程主机在对它进行入侵扫描就会发送特殊数据包,造成系统瘫痪。如果攻击者利用它们来做反射器,受害服务器拒绝服务的效果会更明显。3.空连接攻击空连接攻击是一种能躲避防火墙阻挡的DDoS攻击方式。攻击者操控傀儡机用真实的IP对目标服务器发起大规模的连接,之后却不传输任何数据,只是强制性地保持连接不中断,当空连接数达到一定规模,正常用户的连接请求将无法建立,攻击者的目的就达到了。4、DDoS攻击的防御方案一旦遭受DDoS攻击,都会造成不小的麻烦甚至损失。现有的技术也无法保证万无一失,但通过一些积极的措施提升服务器的性能,还是可以有效降低网络服务被DDoS攻击影响的风险。这些措施有:1、升级硬件加大网络服务器的运行内存、硬盘储存空间以及网络带宽,升级处理器。使服务器除了提供日常的服务,还留有足够的冗余,这样就不至于被一些小流量的DDoS攻击导致拒绝服务。2、保证服务器系统的安全定期对服务器进行安全检测,及时修补操作系统漏洞。中国计算机紧急响应协调中心发现,几乎所有受到DDoS攻击的系统都没有打上补丁。关闭服务器上未使用的服务和端口,对关键的服务要做好备份。安装正版的服务器端软件,对于自主研发的服务端程序,做好安全性和稳定性相关的测试。同时,增加客户端软件的功能,让它能自行处理用户的一些特定操作,从而减少使用过程中与服务器通信。3.隐藏服务器真实IP对于网站服务器可以前端加CDN中转(免费的有360网站卫士等),所有解析的域名都使用CDN的IP地址。另外,防止服务器对外传送信息泄漏IP。比如,不使用服务器发送邮件,如果非要发送邮件,可以通过第三方代理发送,这样对外显示的是代理的IP。5、采用静态网页把网站尽可能做成静态页面,不仅能大大提高抗DDoS攻击能力,而且还给黑客入侵带来不少麻烦。6、安装DDoS防火墙专业的DDoS防火墙可以在服务器和外部网络之间构造保护屏障,流入流出的所有数据包均要经过此防火墙,它能够识别和过滤攻击的数据包。5、问题的深入虽然从现有的资料中整理出了以上这些解决方案,但是它们的可行性怎样,技术上存在哪些缺陷?对于DDoS攻击的防御效果怎样?经济成本有多高,是否适合大范围使用?带着这些问题,我在网络上进行了相关搜索,并走访了一些业内人士。据他们介绍,只要企业对外提供网络服务,DDoS攻击就无法避免和防御,只能说是抵抗。上面的方案用于抵抗早期的DDoS攻击有一定的效果,但是,目前DDoS攻击的规模和流量更大,持续时间更长,需要更先进的技术才能成功抵抗,在这一方面,“云防御”有很大的优势。而且,接入大型云服务器群的成本并不是很高,适合中小型企业。我在网上对云防御进行了搜索,找到许多成功防御DDoS攻击的案例,以下是相关的新闻报道。01来源:安全牛288G带宽,160万次请求,阿里云再遭巨型DDoS攻击2015-06-2310:44核心提示:阿里云用户遭受多次超大流量DDOS攻击,攻击峰值接近300Gbps。中国IDC圈6月23日报道,阿里云用户遭受多次超大流量DDoS攻击,攻击峰值接近300Gbps。此次被攻击的阿里云用户多属于电商行业,而之前6月15日也刚刚发生过一次攻击,针对的则是贵金属行业。根据阿里云发来的资料显示,超过200G以上的攻击共有4次,攻击峰值流量288.7Gbps。攻击期间,阿里云云盾系统实现秒级响应,用户业务未受影响。从攻击类型上来看,超过一半的攻击为UDPFlood。在这次对抗过程中,某电商用户遭受的攻击峰值超过了正常时流量的10倍,在10分钟内黑

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功