网站被DDOS攻击怎么办?

2015-06-28 20:57:39 18536

尽可能地对被攻击目标造成最大程度的资源破坏是DDoS攻击的根本初衷。站在这个角度上来看DDoS攻击的发展,可以梳理出清晰的脉络。

三个发展阶段

曾经有安全专家把DDoS攻击比作互联网“核武器”:一旦调动足够数量遍布互联网的“肉鸡”和存在各种协议漏洞的开放服务器,就可以瘫痪掉任何互联网业务。尽可能地对被攻击目标造成最大程度的资源破坏是DDoS攻击的根本初衷。站在这个角度上来看DDoS攻击的发展,可以梳理出清晰的脉络。

DDoS攻击的发展趋势呈明显的三个阶段性:

第一阶段:由个人计算机组建僵尸网络,发动DDoS攻击;

第二阶段:利用互联网开放服务器(如DNS、NTP)发起反射攻击;

第三阶段:利用智能/IoT设备协议(如SSDP)的脆弱性发起反射攻击。

如下图所示:

图1: DDoS攻击的发展

来自僵尸网络的DDoS

最为传统的DDoS攻击多利用僵尸主机(Zombies,又叫肉鸡)组成僵尸网络来发起。

图2: 典型的僵尸网络架构

(Source:图片来自网络)

“肉鸡”是指中了木马,或者被一些人留了后门的计算机,成为“肉鸡”的计算机可以被黑客远程操控。“肉鸡”的存在多由于用户系统存在各种脆弱性导致,系统一旦被入侵,黑客可获得控制权。黑客在这些“肉鸡”所有者不知情的情况下,发起对既定攻击目标的攻击。其中一种比较典型的攻击就是DDoS攻击。

在我们遇到的一些实际攻击事件中,从攻击流量中分析来看,来源非常分散,全国各地都有,此类攻击很可能就是由大量受操控“肉鸡“组成的僵尸网络发起。可见,“肉鸡”对于互联网、特别是网站系统的威胁是很大的。即便单个“肉鸡”的攻击能力有限,但如果肉鸡数量很多,汇总后的攻击流量也将是惊人的。

利用开放服务器的反射放大

虽然肉鸡的效果显著,但是无论组建还是僵尸网络的维护都需要较高的成本,伴随黑客不断对更低成本获得更大效果的追求,利用互联网开放服务器发起反射拒绝服务攻击逐渐流行。

图3: 利用NTP服务器发起反射攻击

反射拒绝服务攻击又称DRDoS攻击(Distributed Reflection Denial of Service),或分布式反射拒绝服务攻击。其原理是黑客伪造成被攻击者的IP地址,向互联网上大量开放特定服务的服务器发起请求,接收到请求的那些主机根据源IP地址将响应数据包返回给受害者。整个过程中,返回响应的服务器并不知道请求源的恶意动机。

黑客往往会选择那些响应包远大于请求包的服务来利用,这样才可以以较小的流量换取更大的流量,获得几倍甚至几十倍的放大效果。一般来说,可以被利用来做放大反射攻击的服务包括DNS服务、NTP服务、SNMP服务、Chargen服务等。

根据US-CERT在2014年1月发布的预警(Alert TA14-017A),DNS、NTP、SNMP等协议的反射放大效果以及脆弱性如下图所示:

图4: 反射放大攻击效果和脆弱性一览

(Source:https://www.landui.com/ncas/alerts/TA14-017A)

从上图可见,利用NTP协议的反射放大效果最好,超过500倍。也就是说攻击者只需要发起100Mbps的请求流量,经过NTP服务器的反射放大,可以换来5Gbps的攻击流量。2014年2月,在国外某云计算服务提供商遭受的400Gbps DDoS攻击中,黑客就采用了NTP 反射放大攻击。

SSDP攻击的崛起

一方面,随着互联网上存在DNS、NTP、SNMP等协议脆弱性的开放服务漏洞不断被修复,可以用来发起反射攻击的服务器数量数量越来越少。另一方面,互联网上家用路由器、网络摄像头、打印机、智能家电等设备数量的激增,让黑客看到了另一个可以不断挖掘的金山。这些智能设备普遍采用UPnP(即插即用)协议作为网络通讯协议, 而UPnP设备的发现是通过源端口为1900的SSDP(简单服务发现协议)进行相互感知。

利用SSDP协议进行反射攻击的原理与利用DNS服务、NTP服务类似,都是伪造成被攻击者的IP地址向互联网上大量的智能设备发起SSDP请求,接收到请求的智能设备根据源IP地址将响应数据包返回给受害者。

图5: SSDP反射放大攻击

SSDP反射放大攻击是一个迅速崛起的DDoS攻击方式。从Akamai 2015 Q1 State of the Internet / Security Report报告中可以看出,SSDP反射攻击已经成为TOP1的DDoS攻击方式(20.78%)。在2014年Q4,SSDP DDoS的比例只有14%,在2014年Q1,则几乎没有SSDP反射攻击,如下图所示:

图6: SSDP攻击所占比例最多

(Source:2015 Q1 Akamai’s State of the Internet / Security Report)

根据Arbor Networks在2015年初发布的《Worldwide Infrastructure Security Report》,SSDP反射攻击到2014年7月才被关注,在2014年Q3-Q4期间曾经打出过若干次超过100Gbps的攻击流量。

图7: SSDP攻击自2014年Q3后异军突起

(Source:Worldwide Infrastructure Security Report,Arbor networks)

另根据USCERT的数据,SSDP的放大倍数是30倍,虽然较NTP和Chargen等协议的放大倍数小很多,但是由于互联网上智能设备的数量非常庞大,随着IoT的发展,这个数字更将呈现几何级数的增加。这无疑为黑客提供了丰富的攻击来源。

SSDP严峻的形势在阿里云上同样得到了体现。根据阿里云云盾安全运营团队在2015年6月的统计,在对阿里云用户的UDP DDoS攻击中,80%的攻击方式为SSDP反射放大攻击。

下图是在黑客对阿里云某用户攻击中捕获的数据包,源端口为1900是SSDP 反射放大攻击的重要特征之一:

图8: SSDP攻击数据包

随着物联网和智能设备的快速发展和普及,利用智能设备展开DDoS攻击会越来越普遍。

如何应对?

对于DDoS攻击,普遍采用的防护手段包括:

(1)源验证/反向探测,对源进行探测和人机识别,段包括cookie、识别码等;

(2)限源,即对源IP或协议进行限制,blacklist是一个常见手段;

(3)特征丢弃,依据数据包的特征或访问行为进行丢弃,如基于Payload特征、发包行为特征、QPS特征等;

(4)限速,对流量/访问的速率进行限流。

特别对于大流量DDoS攻击的防护,与电信运营商配合也是必不可少的。其中包括与运营商配合实施就源清洗,以及在运营商侧路由器上对特定协议或特定来源的IP进行限制都是降低防护开销的办法。

当然,针对于网络层DDoS攻击(Layer-4 DDoS)和应用层DDoS(Layer-7 DDoS)攻击不同的攻击策略,在具体防护时,采取的手段也不尽相同。这里不再赘述。

此外,对于网站来说,通过CDN进行DDoS防护也是一个不错的手段,CDN多节点彼此互备,以及对协议的限制,具有与生俱来的抗DDoS能力和高可用性。同时,CDN往往与云WAF系统配合工作,两者协同成为防护HTTP Flood的利器。

上面的方法是否就是防御DDoS攻击的全部了呢? NO!

随着大数据的兴起,依托用户访问数据、包括QPS,IP-cookie,IP-Request分布、页面点击等行为数据结合信誉机制建立起完整的可视化防御系统。结合威胁情报,建立起运营商/ISP/DC/区域信息库、IP地址黑名单、代理库、黑暗网络库等丰富的情报库,线上、线下进行关联分析,一方面将防御时间点提前,甚至在攻击发起之前就可以预知;另一方面溯源追踪到攻击者,有效打击攻击者的嚣张气焰。

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: