一、DDos概念
分布式拒绝服务(Distributed Denial of Service,简称DDoS)是指将多台计算机联合起来作为攻击平台,通过远程连接,利用恶意程序对一个或多个目标发起DDoS攻击,消耗目标服务器性能或网络带宽,从而造成服务器无法正常地提供服务。
攻击原理
通常,攻击者使用一个非法账号将DDoS主控程序安装在一台计算机上,并在网络上的多台计算机上安装代理程序。在所设定的时间内,主控程序与大量代理程序进行通讯,代理程序收到指令时对目标发动攻击,主控程序甚至能在几秒钟内激活成百上千次代理程序的运行。
流量清洗
流量清洗是指通过专业的防DDoS设备或者服务对流量进行分析和过滤,将其中的正常流量和攻击流量区分开,并将正常流量回源到服务器,从而减轻服务器压力和风险。
黑洞
黑洞是指当DDoS攻击流量达到清洗服务可承载的最大阈值时,为了保护同网络其他业务的可用性,将所有访问目标IP的流量进行丢弃。
二、防护
-
确保充足的带宽:网络带宽是抗DDoS攻击的关键,至少要选择100M的共享带宽,并尽量挂在1000M的主干上,以应对大流量攻击 。
-
使用硬件防火墙:专业级防火墙可以过滤异常流量,对抗SYN/ACK攻击、TCP全连接攻击等流量型DDoS攻击 。
-
采用高性能网络设备:服务器、路由器、交换机等设备的性能需要跟上,避免成为网络防御的瓶颈 。
-
负载均衡:通过负载均衡分散网络流量,增加吞吐量和网络数据处理能力,对抗DDoS和CC攻击 。
-
CDN流量清洗:CDN通过边缘服务器分发内容,降低网络拥塞,提高访问速度,同时帮助清洗流量 。
-
分布式集群防御:在集群的每个节点配置多个IP地址,当一个节点受攻击时,系统自动切换到另一个节点,并将攻击流量返回发送点 。
-
高防智能云解析:云解析根据用户的上网路线智能匹配服务器,具备宕机检测功能,可智能更换瘫痪服务器IP 。
-
筛查系统漏洞:及时安装系统补丁,对重要信息建立备份机制,谨慎设置特权账号密码,减少攻击者的可乘之机 。
-
系统资源优化:合理优化系统,减少不必要的进程和启动项,提高服务器负载能力 。
-
限制特定流量:检查访问来源,适当限制异常或恶意流量,主动保护网站安全 。
-
使用DDoS防护服务:云服务商提供的DDoS防护服务具有多层防御架构、基于AI的检测和响应系统、以及全球分布式网络,能有效抵御DDoS攻击 。
-
合作与情报共享:通过企业间合作,共享攻击情报,交流防御策略,快速响应DDoS攻击,减少损失 。
-
使用高防IP代理服务:避免源站遭受大流量DDoS攻击,通过高防IP代理源站IP对外提供服务,将恶意攻击流量引流到高防IP清洗 。
全力防护(原生防护)
DDoS原生防护的全力防护,是指根据当前地域下DDoS本地清洗中心的机房网络和资源整体水位,尽可能对攻击进行防御,随着阿里云网络能力的不断提升,全力防护也会提升防护能力,不需要您额外付出升级成本。
全力防护(高防)
DDoS高防的全力防护,是指DDoS高防集群会调用所有可用资源进行尽全力进行防护,但如果攻击超过集群可用的最大水位,仍然有黑洞的风险。
弹性防护
弹性防护是DDoS高防(中国内地)专业版提供的DDoS防御能力。针对DDoS攻击超过保底防护带宽的场景,您可以设置需要DDoS高防(中国内地)帮助您防御的最大DDoS攻击流量阈值(即弹性防护带宽)。当DDoS攻击流量峰值超过保底防护带宽,且小于您设置的弹性防护带宽时,将触发弹性防护,且产生发生攻击当日的弹性防护费用。
高级防护
高级防护是DDoS高防(中国内地)高级版、DDoS高防(非中国内地)保险版、无忧版、安全加速线路、安全加速线路(基础版)防护套餐中提供的DDoS防御能力。高级防护(即无上限全力防护)以成功防御每一次DDoS攻击为目标,整合阿里云当前地域所有高防清洗中心能力,全力保护您的业务。
当单个高防IP受到的DDoS攻击流量超过5 Gbps时消耗对应实例一次高级防护次数,防护时效为24小时,即24小时内该高防IP遭受的所有DDoS攻击共消耗一次高级防护次数。
三、DDoS攻击的危害
DDoS攻击会对您的业务造成以下危害:
-
重大经济损失
在遭受DDoS攻击后,您的源站服务器可能无法提供服务,导致用户无法访问您的业务,从而造成巨大的经济损失和品牌损失。
例如:某电商平台在遭受DDoS攻击时,网站无法正常访问甚至出现短暂的关闭,导致合法用户无法下单购买商品等。
-
数据泄露
黑客在对您的服务器进行DDoS攻击时,可能会趁机窃取您业务的核心数据。
-
恶意竞争
部分行业存在恶性竞争,竞争对手可能会通过DDoS攻击恶意攻击您的服务,从而在行业竞争中获取优势。
例如:某游戏业务遭受了DDoS攻击,游戏玩家数量锐减,导致该游戏业务几天内迅速彻底下线。
四、DDos分类
-
流量型攻击主要是针对网络带宽的攻击,黑客通常利用多个被控制的计算机或者发包机向目标服务器发送大量请求或者数据包,导致网络带宽被阻塞正常业务无法访问。
-
应用层攻击主要是针对服务器的攻击,通过恶意请求导致服务器的内存被耗尽,或者CPU被内核及应用程序耗尽而导致服务器无法响应业务正常访问请求。
-
Web资源耗尽型攻击
-
Web资源耗尽型攻击是针对应用层协议(如http、https等)发起的恶意请求攻击,通过模拟真实用户的访问行为,例如登录、注册、搜索等,消耗目标站点的应用资源,导致正常请求无法响应。
连接型攻击
连接型攻击是指针对传输层TCP协议发起的恶意会话攻击,黑客利用多个肉鸡终端向目标网站发送大量TCP请求,消耗目标服务器的连接、CPU、内存等资源,从而导致正常业务无法访问。
流量型攻击
流量型攻击是针对网络带宽的攻击,黑客通常利用多个被控制的计算机或者发包机向目标服务器发送大量请求或者数据包,导致网络带宽被阻塞正常业务无法访问。
-
DDoS攻击分类
攻击子类
描述
畸形报文
畸形报文主要包括Frag Flood、Smurf、Stream Flood、Land Flood、IP畸形报文、TCP畸形报文、UDP畸形报文等。
畸形报文攻击指通过向目标系统发送有缺陷的IP报文,使得目标系统在处理这样的报文时出现崩溃,从而达到拒绝服务的攻击目的。
传输层DDoS攻击
传输层DDoS攻击主要包括Syn Flood、Ack Flood、UDP Flood、ICMP Flood、RstFlood等。
以Syn Flood攻击为例,它利用了TCP协议的三次握手机制,当服务端接收到一个Syn请求时,服务端必须使用一个监听队列将该连接保存一定时间。因此,通过向服务端不停发送Syn请求,但不响应Syn+Ack报文,从而消耗服务端的资源。当监听队列被占满时,服务端将无法响应正常用户的请求,达到拒绝服务攻击的目的。
DNS DDoS攻击
DNS DDoS攻击主要包括DNS Request Flood、DNS Response Flood、虚假源+真实源DNS Query Flood、权威服务器攻击和Local服务器攻击等。
以DNS Query Flood攻击为例,其本质上执行的是真实的Query请求,属于正常业务行为。但如果多台傀儡机同时发起海量的域名查询请求,服务端无法响应正常的Query请求,从而导致拒绝服务。
连接型DDoS攻击
连接型DDoS攻击主要是指TCP慢速连接攻击、连接耗尽攻击、Loic、Hoic、Slowloris、 Pyloris、Xoic等慢速攻击。
以Slowloris攻击为例,其攻击目标是Web服务器的并发上限。当Web服务器的连接并发数达到上限后,Web服务即无法接收新的请求。Web服务接收到新的HTTP请求时,建立新的连接来处理请求,并在处理完成后关闭这个连接。如果该连接一直处于连接状态,收到新的HTTP请求时则需要建立新的连接进行处理。而当所有连接都处于连接状态时,Web将无法处理任何新的请求。
Slowloris攻击利用HTTP协议的特性来达到攻击目的。HTTP请求以
\r\n\r\n
标识Headers的结束,如果Web服务端只收到\r\n
,则认为HTTP Headers部分没有结束,将保留该连接并等待后续的请求内容。Web应用层DDoS攻击
Web应用层攻击主要是指HTTP Get Flood、HTTP Post Flood、CC等攻击。
通常应用层攻击完全模拟用户请求,类似于各种搜索引擎和爬虫一样,这些攻击行为和正常的业务并没有严格的边界,难以辨别。
Web服务中一些资源消耗较大的事务和页面。例如,Web应用中的分页和分表,如果控制页面的参数过大,频繁的翻页将会占用较多的Web服务资源。尤其在高并发频繁调用的情况下,类似这样的事务就成了早期CC攻击的目标。
由于现在的攻击大都是混合型的,因此模拟用户行为的频繁操作都可以被认为是CC攻击。例如,各种刷票软件对网站的访问,从某种程度上来说就是CC攻击。
CC攻击瞄准的是Web应用的后端业务,除了导致拒绝服务外,还会直接影响Web应用的功能和性能,包括Web响应时间、数据库服务、磁盘读写等。
-
五、如何判断业务是否已遭受DDoS攻击?
-
出现以下情况时,您的业务可能已遭受DDoS攻击:
-
网络和设备正常的情况下,服务器突然出现连接断开、访问卡顿、用户掉线等情况。
-
服务器CPU或内存占用率出现明显增长。
-
网络出方向或入方向流量出现明显增长。
-
您的业务网站或应用程序突然出现大量的未知访问。
-
登录服务器失败或者登录过慢。