1. 前言
DDoS攻击是互联网上最古老的攻击,这是一场军备竞赛,攻方的矛是庞大的僵尸网络,守方的盾则是背靠运营商,大力建机房。
纵观DDoS防御发展,会发现技能点长在如何在攻击时刻快速卸载掉攻击流量。例如:
- 机房建设: 与拥有带宽资源的厂商合作,例如运营商,云厂商、CDN厂商
- 高性能数据包处理:可编程交换机、25G网卡、dpdk
- 业务可用性:监测集群/防御转发集群/清洗集群的高可用,故障自动摘除
- 安全产品易用性:多平台支持,接入简化
而流量检测上无本质突破,主流的还是 基线+业务流量识别+可疑流量成分分析+IP信誉库
没突破的原因,个人觉得是误判的后果不严重(和WAF、NDS相比),动力不足:
- 误判流量,一般与正常业务流量的差距不大,不会触发流量清洗,于业务无损
2. 案例
2.1 单向流量镜像带来的误判
表象:ACK Flood攻击,VIP收到了大量TCP ACK数据包
真相:VIP为client,接收server的返回数据
本质:只镜像到了单向流量
2.2 UDP业务流量未识别带来的误判
表象:UDP Flood攻击,VIP收到了大量UDP数据包
真相:VIP为server, 接收client的请求,多个client请求包,一个server响应包
本质:UDP资产通信流量的识别不准
2.3 UDP-IP分片包带来的误判
表象:IP分片攻击,VIP收到了大量IP分片包
真相:VIP为client, 接收server的响应包,server响应包超过MTU,被分片
本质:UDP资产通信流量的识别不准
3. 总结
砍掉部分功能(例如IP分片重组,TCP分段重组,会话跟踪,虚拟源IP探测识别),用损失准确性来换取性能上的响应优势,来保证核心防御能力。 而对精准性有要求的客户,采用定制防御(这也是收费项),这在抗D产品中属于主流的做法。
DDoS攻击误判的坑,目前看来影响不大,但后续是否会扩大(判定策略用在清洗上?),还是未知。