原文地址:http://drops.wooyun.org/tips/8872

文章转载自:http://www.ayazero.com/?p=75

0x00 导读


0x01 DDOS分类


在讲防御之前简单介绍一下各类攻击,因为DDOS是一类攻击而并不是一种攻击,并且DDOS的防御是一个可以做到相对自动化但做不到绝对自动化的过程,很多演进的攻击方式自动化不一定能识别,还是需要进一步的专家肉眼判断。

0x02 多层防御结构


DDOS攻击本质上是一种只能缓解而不能完全防御的攻击,它不像漏洞那样打个补丁解决了就是解决了,DDOS就算购买和部署了当前市场上比较有竞争力的防御解决方案也完全谈不上彻底根治。防火墙、IPS、WAF这些安全产品都号称自己有一定的抗DDOS能力,而实际上他们只针对小流量下,应用层的攻击比较有效,对于稍大流量的DDOS攻击则无济于事。

以2015年年中的情况为例,国内的DDOS攻击在一个月内攻击流量达到300G的就将近10-20次,这个数值将随着国内家庭宽带网速提升而进一步放大。对于200~500G的攻击流量该如何防御,下来将展示完整的防御结构,通常可以分为4层。

这4层不是严格意义上的纵深防御关系,也不是在所有的防御中4层都会参与,可能有时候只是其中的2层参与防御。但对于超大流量攻击而言,4层就是防御机制的全部,再没有其他手段了。跟厂商们的市场宣传可能有所不同,大流量攻击的防护并不是像某些厂商宣称的那样靠厂商单方面就能解决的,而是多层共同参与防御的结果。

0x03 不同类型的企业


DDOS的防御本质上属于资源的对抗,完整的4层防御效果虽好,但有一个明显问题就是TCO,这种成本开销除了互联网行业排名TOP10以外的公司基本都吃不消。或者就算付得起这钱,在IT整体投资的占比会显得过高,付得起不代表这种投资是正确的。所以针对不同的企业分别描述DDOS缓解方案的倾向和选择性。

0x04 不同类型的业务


不同的类型的服务所需要的DDOS防御机制不完全相同,所以不能直接拿前述4层生搬硬套。

DDOS攻击的目的不一定完全是出于想打垮服务,比如以前在做游戏时遇到玩家DDOS服务器的目的竟然是因为没抢到排在第一的房间,这种因素通过产品设计就可以根治,而有很多应用层DDOS只是为了达成另外一种目的,都跟上述4层防御机制无关,而跟产品设计有关。所以防御DDOS这事得看一下动因,不能盲目应对。

0x05 NIPS场景


ADS本质上是一个包过滤设备,虽功用不同却跟IPS有点相似,之前也提到有时候需要提供全站IPS的虚拟补丁功能,ADS设备就可以充当这一角色,只是条目不宜多,只上有限的条目,下面的是NSFOCUS的ADS设备的规则编辑界面,payload可自定义

一般安全团队能力尚可的话,可以通过运行POC exploit,然后抓包找出攻击payload的特征,编辑16进制的匹配规则,即可简单的实现人工定制。

0x06 破防和反制


从安全管理者的角度看,即便是拥有完整的4层防御机制也并非无懈可击,号称拥有400-500G防护能力的平台是完全有可能被打垮的,完全的防护能力是建立在人、策略、技术手段都生效的情况才有的,如果这些环节出了问题,anti-ddos的整个过程可能会失败。例如下面提到的这些问题:

以上并不在于提供新的攻击的思路,而在于向anti-ddos方案的制定者提供另类视角以便于审视方案中的短板。

0x07 立案和追踪


目前对于流量在100G以上的攻击是可以立案的,这比过去幸福了很多。过去没有本土特色的资源甚至都没法立案,但是立案只是万里长征的第一步,如果你想找到人,必须成功完成以下步骤:

如果这个人没有特殊身份,也许你就能如愿,但假如遇到一些特殊人物,你几个月都白忙乎。而黑吃黑的能力则依赖于安全团队本身的渗透能力比较强,且有闲情逸致做这事。这个过程对很多企业来说成本还是有点高,光有实力的安全团队这条门槛就足以砍掉绝大多数公司。笔者过去也只是恰好有缘遇到了这么一个团队。