DDoS攻击只能算是入门级的,也没有什么技术含量。防御吧觉得就因为是入门级的,往往我们就容易忽略它的存在,同时忘记了它的恐怖之处,黑客利用攻击成本低和大量僵尸网络资源频繁的给企业造成破坏。主要表现在发送大量的恶意访问请求,占用服务器资源,消耗带宽以及CPU内存,使网站宕机,打不开,业务暂停。也给企业的声誉,财产造成巨大的损失。而且有些高级黑客会利用DDoS攻击携带隐藏的病毒以及勒索软件等,使企业核心数据信息泄露等。因此DDOS威胁严重的影响着企业信息安全的发展。而且不止是企业,全球各个地方,每天都上演着黑客发动的网络攻击,DDOS攻击等,严重影响了互联网信息安全的发展。
如何做好DDoS防御呢?
1.首先是确保服务器采用最新的系统,并定期安装更新补丁,修复漏洞,关闭删除不使用的端口,对路由器以及防火墙合理设置,做以权限管理;
2.不随便下载来路不明的应用,不随意点开接收邮件中受到的不明链接,同时不使用服务器邮件发送功能,避免因误操作导致服务器被携带的病毒、木马感染,使其成为僵尸肉鸡,也避免泄露IP地址;
3.使用高防CDN的分布式存储,以及负载均衡和全局网络的重点向管理技术,给用户提供高效的就近原则式内容分发服务。来隐藏用户的源站IP,替身清洗,过滤恶意访问,以此来避免攻击直接打到源站IP上。
4.使用高防IP来缓解DDOS攻击。高防IP主要是替身隐藏源站IP,将恶意攻击流量进行过滤清洗,然后通过端口协议转发的方式,将正常的访问请求转发到源站IP。以此来确保源站IP不受影响,可以正常稳定运行以及访问。
常见的DDoS攻击类型包括畸形报文、传输层DDoS攻击、DNS DDoS攻击、连接型DDoS攻击、Web应用层DDoS攻击 ,关于每种类型的具体介绍,请参见下文说明。
畸形报文
畸形报文攻击指通过向目标系统发送有缺陷的IP报文,使得目标系统在处理这样的报文时出现崩溃,从而达到拒绝服务的攻击目的。
畸形报文主要包括以下类型:Frag Flood、Smurf、Stream Flood、Land Flood、IP畸形报文、TCP畸形报文、UDP畸形报文
2. 传输层DDoS攻击
传输层DDoS攻击主要是指Syn Flood、Ack Flood、UDP Flood、ICMP Flood、RstFlood等攻击。
以Syn Flood攻击为例,它利用了TCP协议的三次握手机制,当服务端接收到一个Syn请求时,服务端必须使用一个监听队列将该连接保存一定时间。因此,通过向服务端不停发送Syn请求,但不响应Syn+Ack报文,从而消耗服务端的资源。当监听队列被占满时,服务端将无法响应正常用户的请求,达到拒绝服务攻击的目的。
3. DNS DDoS攻击
DNS DDoS攻击主要是指DNS Request Flood、DNS Response Flood、虚假源+真实源DNS Query Flood、权威服务器攻击和Local服务器攻击。
以DNS Query Flood攻击为例,其本质上执行的是真实的Query请求,属于正常业务行为。但如果多台傀儡机同时发起海量的域名查询请求,服务端无法响应正常的Query请求,从而导致拒绝服务。
4. 连接型DDoS攻击
连接型DDoS攻击主要是指TCP慢速连接攻击、连接耗尽攻击、Loic、Hoic、Slowloris、 Pyloris、Xoic等慢速攻击。
以Slowloris攻击为例,其攻击目标是Web服务器的并发上限,当Web服务器的连接并发数达到上限后,Web服务即无法接受新的请求。具体来说,Web服务接收到新的HTTP请求时,建立新的连接来处理请求,并在处理完成后关闭这个连接;如果该连接一直处于连接状态,收到新的HTTP请求时则需要建立新的连接进行处理;而当所有连接都处于连接状态时,Web将无法处理任何新的请求。
Slowloris攻击利用HTTP协议的特性来达到攻击目的。HTTP请求以标识Headers的结束,如果Web服务端只收到,则认为HTTP Headers部分没有结束,将保留该连接并等待后续的请求内容。
5. Web应用层DDoS攻击
Web应用层攻击主要是指HTTP Get Flood、HTTP Post Flood、CC等攻击。
通常应用层攻击完全模拟用户请求,类似于各种搜索引擎和爬虫一样,这些攻击行为和正常的业务并没有严格的边界,难以辨别。
Web服务中一些资源消耗较大的事务和页面。例如,Web应用中的分页和分表,如果控制页面的参数过大,频繁的翻页将会占用较多的Web服务资源。尤其在高并发频繁调用的情况下,类似这样的事务就成了早期CC攻击的目标。
由于现在的攻击大都是混合型的,因此模拟用户行为的频繁操作都可以被认为是CC攻击。例如,各种刷票软件对网站的访问,从某种程度上来说就是CC攻击。
CC攻击瞄准的是Web应用的后端业务,除了导致拒绝服务外,还会直接影响Web应用的功能和性能,包括Web响应时间、数据库服务、磁盘读写等。