文献:
Fayaz S K, Tobioka Y, Sekar V, et al. Bohatei: flexible and elastic DDoS defense[C]// Usenix Conference on Security Symposium. 2015.
0 Abstract
DDoS防御系统往往依赖于配置在固定地点的昂贵专用硬件设备,这对防御的灵活性产生了很大的限制,我们发现可以使用SDN和NFV来解决这个问题。
基于这个发现,我们设计了一个灵活的DDoS防御系统-Bohatei,解决了可拓展性,及时响应,基于对手的弹性能力等挑战。
我们应用Bohatei进行了几次对DDos攻击的防御,实验证明,Bohatei可以处理500 Gbps的攻击,在一分钟内缓解攻击并且对于动态的攻击具有一定弹性。
1 Introduction
DDoS攻击在当今互联网泛滥成灾,而DDoS防御使用的是昂贵且位置固定的专用硬件设备,且其具体的功能只能针对某一种特定的DDoS攻击。
我们发现在其他网络领域存在相似的问题,其可以使用SDN和NFV进行解决。SDN通过将控制层和数据层进行分离来简化路由。而通过NFV使用虚拟网络功能能降低成本,并实现弹性拓展,缩短部署时间。
在设计Bohatei的过程中,我们解决了三个关键的算法和系统设计问题。
- 决定防御虚拟机的部署数量和位置的资源管理问题
- 现有的SDN解决方案根本不适用于DDoS防御,甚至存在新的攻击途径
- 智能的DDoS攻击者可以尝试逃避弹性防御,或者通过动态改变攻击模式来诱导低效率的配置。
2 Background and Motivation
2.1 New network management trends
对SDN和NFV做了简单的介绍。
2.2 New opportunities in DDoS defense
下面简单介绍SDN和NFV为DDoS防御提供的新机遇:
- 降低资本成本
- 缩短开发周期
- 弹性应付攻击流量的大小
- 更加灵活地应对不同的攻击类型
- 更加灵活地应对供应商的灵活性
- 简化并提高路由的效率
3 System Overview
3.1 Problem scope
部署方案:
我们设想ISP已经部署了多个数据中心,如下图所示:
每个数据中心都有商用硬件服务器,可以运行标准虚拟化网络功能。
威胁模型:
我们专注于考虑ISP客户收到的一般性DDoS威胁。攻击者的目标通常是耗尽被攻击者的网络带宽,攻击者可以灵活地选择攻击类型,假设攻击类型的候选集合为 A t t a c k S e t = { A a } a AttackSet = \{A_a\}_a AttackSet={
Aa}a。
我们只考虑以下类型的DDoS攻击:TCP SYN洪水攻击,UDP淹没攻击,DNS 放大攻击,大象流攻击。
另外假设攻击者控制了大量的僵尸程序,但在任何给定时间内可以启动的最大攻击流量总预算是固定的。根据预算,攻击者可以自由选择:
- 来自 A t t a c k S e t AttackSet AttackSet的攻击类型和混合比例。(如60%SYN和40%DNS)
- 攻击流量进入ISP的入口位置集。
防御:
我们假设ISP有一个提前定义的防御库,对于每一种特定的攻击类型提供指定的防御策略。对于每种攻击类型 A a A_a Aa,防守策略是一个多阶段攻击分析和缓解过程的有向无环图 D A G a DAG_a DAGa,图中的每个节点表示一个逻辑模块,而边则代表着前驱结点处理的结果(例如:“良性”或者“攻击”或者“需要进一步分析”)每一个逻辑节点将由一个或多个虚拟设备进行实现,具体取决于攻击量。
3.2 Bohatei workflow and challenges
Bohatei主要有以下四个工作步骤:
- 攻击检测
我们建设ISP使用了外带的异常检测技术来标记客户是否收到DDoS攻击,检测算法将返回受到攻击的用户和攻击类型及来源的粗略标识。 - 攻击评估
一旦检测到可疑流,则策略模块将估计出到达每个入口的每种攻击类型的可疑流量。 - 资源管理
资源管理器将根据估计值及防御库来决定防御虚拟机的类型、数量和位置。资源管理器的目标是有效地分配网络资源用来防御,同时最小化用户感知延迟和网络拥塞。 - 网络编排
最后,网络编排模板设置要求的网络转发规则,按资源管理器的要求将可疑流量引导到防御虚拟机。
为了实现以上步骤,我们需要解决三个挑战:
- 需要一个有效的方法来将ISP可用的计算和网络资源分配给DDoS防御。
- 可拓展的网络编排
- 动态的攻击
3.3 High-level approach
对于上述三个挑战,分别提出以下三个解决方案:
- 分层优化
为了解决第一个挑战,我们使用层次分解法将问题分为两个阶段。首先是Bohatei全局控制器使用粗粒度信息来决定每个数据中心运行的虚拟机的种类和数量。随后每个本地控制器使用更加细粒度的信息来决定每个防御VM运作的特定服务器。 - 主动标记转发
为了解决第二个挑战,我们使用了两个关键思想设计了一个可拓展的编排机制:首先交换机转发规则基于每一个虚拟机标签,以减少转发表的大小。此外,我们主动配置交换机以消除交换机和控制层的频繁交互。 - 在线适应
为了解决第三个挑战,我们设计了一种防御策略适应方法,其灵感来自于经典的用于最小化后悔的在线算法
4 Resource Manager
资源管理模块的目的是有效地确定网络和计算资源,以分析可疑流并对其采取行动。
4.1 问题输入
将一个ISP视为边集 P o P s