一种实现软件定义安全的安全架构系统及安全控制器的制造方法

文档序号:7807710阅读:192来源:国知局
一种实现软件定义安全的安全架构系统及安全控制器的制造方法
【专利摘要】本发明公开一种实现软件定义安全的安全架构系统及安全控制器,该安全控制器包含一管理模块、一事件调度模块、一流轮询模块及一流监视模块。管理模块提供至少一安全设备或至少一安全应用进行注册。流轮询模块轮询一网络控制器获取数据流。流监视模块根据触发条件检测该数据流。事件调度模块根据触发条件的检测结果生成一执行策略事件。
【专利说明】一种实现软件定义安全的安全架构系统及安全控制器

【技术领域】
[0001] 本发明涉及机算机网络架构,尤其是机算机网络的安全控制器及具有安全控制器 的安全架构系统。

【背景技术】
[0002] 软件定义网络(SDN, Software-Defined Networking)通过软件的形式重构网络, 颠覆了现有的网络的通信和管理模式,近年来在业界和学术界得到越来越多的关注。将数 据转发与路由控制分离,以中央控制的方式,用程序重新规划网络,以有效控制网络流量。
[0003] 软件定义安全采用SDN架构设计思想,将安全的控制平面和数据平面进行分离, 通过控制平面提供的可编程能力实现安全服务的重构,最大化SDN带来的安全机遇。
[0004] 虽然软件定义网络和网络功能虚拟化(NFV,Network Function Virtualization) 有诸多优点,但其使得网络边界模糊化及虚拟化,造成很多传统的安全产品无法适用。
[0005] 例如当前的DDoS攻击,攻击者一般攻击单台服务器,但在虚拟化环境中,由于物 理带宽是固定的,攻击者可能会攻击某个租户的多台虚拟机器(VM),但是每台VM的流量不 会超过既定阈值,所以应对这类攻击,安全应用(Security Application)进行细粒度的安 全防护决策时,需要考虑虚拟化云环境中多租户的环境需求,这也使得安全判定流程较之 传统的防DDoS攻击策略更加复杂。
[0006] 因此有必要提出一种可适用于传统的安全设备和安全应用的安全控制器及具有 安全控制器的安全架构,以实现软件定义安全。


【发明内容】

[0007] 本发明的实施例提供一种安全控制器及具有安全控制器的安全架构系统,能够实 现安全功能的控制和数据平面分离,通过控制平面提供的可编程能力实现安全服务的重 构,能够简化安全设备的处理逻辑,并将复杂的安全策略逻辑移交给安全控制器和安全应 用。
[0008] 为达到上述目的,本发明的实施例采用如下技术方案:首先是一种安全控制器包 含有一管理模块、一事件调度模块、一流轮询模块及一流监视模块。管理模块提供至少一安 全设备或至少一安全应用进行注册。流轮询模块轮询一网络控制器获取数据流。流监视模 块根据触发条件检测该数据流。事件调度模块根据该数据流的检测结果生成一执行策略事 件。
[0009] 优选的是,该管理模块包含一设备管理模块及一应用管理模块。设备管理模块提 供该至少一安全设备进行注册,应用管理模块提供该至少一安全应用进行注册。安全控制 器更包含一设备库,其连接到该设备管理模块,该设备库记录注册过的安全设备。安全控制 器更包含一应用库,其连接到该应用管理模块,该应用库记录注册过的安全应用。该设备管 理模块根据触发条件的检测结果调度注册过的安全设备,并为其完成资源调配、下发配置 变更。
[0010] 优选的是,事件调度模块根据注册过的安全设备生成一设备事件,且事件调度模 块根据注册过的安全应用生成一应用事件。根据注册过的安全应用发出的一订阅请求,安 全控制器将检测过的数据流发送至该注册过的安全应用。
[0011] 优选的是,安全控制器更包含一策略解析模块,其解析该应用管理模块接收到的 策略,根据该事件调度模块的执行策略事件生成相对应的执行指令,其中该应用管理模块 接收到的该策略是由发出订阅请求的安全应用发出的策略。安全控制器还更包含一指令推 送模块,其将该策略解析模块生成的执行指令推送至该网络控制器。
[0012] 安全控制器更包含一流数据库,其连接到该流监视模块,该流数据库记录该流监 视模块所检测的数据流。通过事件调度模块,该流数据库记录该流流轮询模块所获取的数 据流。
[0013] 另外,本发明还提供一种具有安全控制器的安全架构系统,其包含有上述的安全 控制器、至少一安全应用、至少一安全设备、一网络控制器及安全控制器代理。安全控制器 分别连接安全应用、安全设备及该网络控制器。安全控制器通过安全控制器代理可从网络 控制器和安全设备两方面获取和下发控制(流指令、统计信息、策略、等),可实现流级别和 数据包级别的两层防护,提高防护效率,减少安全设备的负载。

【专利附图】

【附图说明】
[0014] 图1为本发明实施例的安全控制器的方块示意图;
[0015] 图2为本发明优选实施例的具有安全控制器的安全架构系统示意图;
[0016] 图3A-3C分别显示为应用库连接到应用管理模块、设备库连接到设备管理模块、 以及流数据库连接到流轮询模块等的示意图。
[0017]【符号说明】
[0018] 安全架构系统100 安全控制器1、la
[0019] 管理模块10a 设备管理模块17
[0020] 应用管理模块12 事件调度模块11
[0021] 流轮询模块13 流监视模块14
[0022] 策略解析模块15 指令推送模块16
[0023] 网络控制器2 安全控制器代理21
[0024] 安全应用3 安全设备4
[0025] 交换机5 应用库6
[0026] 设备库7 流数据库8

【具体实施方式】
[0027] 下面结合附图对本发明实施例提供的安全控制器及具有安全控制器的安全架构 系统进行详细描述。
[0028] 请参考图1,本发明的一种安全控制器la,其包含有一管理模块10a、一事件调度 模块11、一流轮询模块13及一流监视模块14。管理模块10a提供至少一安全设备4或至 少一安全应用3进行注册。事件调度模块11根据注册过的该至少一安全应用生成一订阅 触发条件。流轮询模块13轮询一网络控制器2获取数据流。流监视模块14根据该订阅触 发条件检测获取的数据流。事件调度模块11根据数据流的检测结果(例如发现有可疑的 数据流)生成一执行策略事件。
[0029] 请参考图2,优选的是,管理模块包含一设备管理模块17及一应用管理模块12。设 备管理模块17提供安全设备4进行注册,应用管理模块12提供安全应用3进行注册。该 设备管理模块17根据安全应用需求,调度注册过的安全设备,并为其完成资源调配、下发 配置变更,例如,1)通过基础设施即服务系统(IaaS)为注册过的安全设备4添加网络地址; 2)安全设备4或安全应用3通过RESTful的Web接口连接到设备管理模块17和应用管理 模块12。
[0030] 应用管理模块12和设备管理模块17将该检测结果推送至注册的安全应用3和安 全设备4,并接收该安全应用3下发的策略。
[0031] 事件调度模块11根据注册过的安全设备4生成一设备事件,且事件调度模块11 根据注册过的安全应用3生成一应用事件。
[0032] 注册过的安全应用发出一订阅请求,订阅可疑的数据流。前述的触发条件就是根 据该订阅请求而生成的。例如,触发条件可以是下列三类典型的触发条件:
[0033] (一)防止Sync-Flood :对于抵御Sync Flood的DDoS攻击,这类的安全应用只需 找到"目的地址相同、字节数byte_count小于3的openflow流"这些数据流即为可疑数据 流,设定触发条件为:这些流的数目大于设定的门限(如:2000),此即为"安全应用的订阅 请求"。
[0034] (二)防止懦虫(worm):以W32/Nicha. Worm这种懦虫病毒为例,该懦虫攻击的数 据包大小为92,协议为ICMP,那么触发条件应为"object. byte_count/object. pkg_count =92and object.protocol = 0x01"。
[0035] (三)防止垃圾邮件:对于垃圾邮件而言,其特征为"目的端口为25,且源地址相 同的流"数量大于 20,因此触发条件为"count (object. dst_port = ref. dst_port = 25and object. src_ip = ref. src_ip)>20,'。
[0036] 该应用管理模块12根据该订阅请求将检测过的数据流发送至发出订阅请求的安 全应用3。安全应用3根据检测过的数据流(例如定义为可疑的数据流)近一步发出一策 略至应用管理模块12。根据应用管理模块12接收到的策略,事件调度模块11生成前述的 执行策略事件。
[0037] 优选的是,安全控制器1更包含一策略解析模块15,其解析前述应用管理模块12 接收到的策略,根据事件调度模块11的执行策略事件生成相对应的执行指令。安全控制器 1还更包含一指令推送模块16。通过安全控制器代理21,指令推送模块16将策略解析模块 15生成的执行指令推送至该网络控制器2。网络控制器2根据执行指令发出OpenFlow流 至交换机5,将检测过的数据流(例如定义为可疑的数据流)重定向到其他机器清洗数据 流。
[0038] 安全应用3包括但不限于:ADS(防DD0S)应用、端口扫描检测(port-scanning detection)应用、WAF告警分析应用等。安全设备4包括但不限于:防火墙(Firewall)、防 DDoS 系统(anti-ddos system ;ADS)、入侵检测系统(Intrusion Defense System)、Web 应 用防火墙(Web Application Firewall)、网络流量分析器(network traffic analyzer)、 漏洞扫描器(Scanner)等等。
[0039] 云计算环境中存在多类需要保护的对象,通常通过网络虚拟平台构建多租户的网 络环境可划分不同的级别的主体概念:租户机构(Tenant)、用户(User)、虚拟主机(VM)、虚 拟子网(Network)、流(Flow)和其他逻辑划分。在SDN环境中还有表征流量统计信息的流 (Flow)概念。通过获知云环境中保护对象的信息,可以更精确定位和处理恶意流量,实现传 统防护无法或很难做到的机制。以抵御DDoS攻击为例,攻击者可能采取两种攻击方式:不 伪造源地址和伪造源地址。在第一种场景中,安全应用可根据数据流找到依次定位到相应 的VM、用户和租户机构;而在第二种场景中,安全应用获得的是虚假网络地址和虚假物理 地址的数据流,无法直接定位到租户。但考虑到OpenFlow中有vlan项,指示了数据流所属 的虚拟子网,每一个子网都是归属于某个租户,所以安全应用可以先后确定数据流所对应 的虚拟子网和租户。
[0040] 前述的执行策略事件(生成相对应的执行指令)具体实现为:例如,上述策略解析 模块15解析应用管理模块12接收到的策略为"将租户A的所有数据进行清洗",那么解析 过程首先就是将租户A解析为A的所有VM,然后寻找离这些VM最近的数据流清洗设备(例 如ADS安全设备)。然后生成"将源或目的为VM的流重定向到ADS设备"的执行指令。指 令推送模块16将该执行指令传输给网络控制器2。当安全控制器代理21收到执行指令之 后,计算出VM到ADS设备的路由路径,下发实施如下的流策略:(1)将所有源或目的为VM的 数据流都沿着该路径传输;(2)数据流经过清洗设备后再经由交换机5传递到网络控制器2 中;(3)最后网络控制器2根据正常的路由策略将清洗过的数据流转发。
[0041] 请参考图3A-3C,安全控制器1更包含应用库6、设备库7、以及流数据库8。应用 库6连接到该应用管理模块12,该应用库6记录注册过的安全应用3。设备库7连接到该 设备管理模块17,该设备库7记录注册过的安全设备4。流数据库8连接到该流轮询模块 13,该流数据库8记录该流轮询模块13所获取的数据流。
[0042] 另外,本发明还提供一种具有安全控制器的安全架构系统100,其包含有上述的安 全控制器1或la、至少一安全应用3、至少一安全设备4、一网络控制器2及一安全控制器代 理21。安全控制器1分别连接安全应用3、安全设备4及通过安全控制器代理21连接该网 络控制器2。
[0043] 通过本发明的安全控制器1或la可从网络控制器2和安全设备4两方面获取和 下发控制(流指令、统计信息、策略等),可实现流级别和数据包级别的两层防护,提高防护 效率,减少安全设备的负载。
[0044] 本发明的安全架构系统100分离了安全控制和安全数据,简化了安全设备的处理 逻辑,使得安全设备更加稳定,并将复杂的安全策略逻辑移交给安全控制器和安全应用,减 少安全设备的负载。
[0045] 在本申请所提供的几个实施例中,应该理解到,所揭露的控制器和系统,可以通过 其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的。另一点,所显示或讨论 的相互之间的耦合或直接耦合可以是通过一些接口。
[0046] 作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的 部件可以是一个物理模块或多个物理模块,即可以位于一个地方,或者也可以分布到多个 不同地方。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目 的。
[0047] 另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以 是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模 块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
[0048] 集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可 以存储在一个可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现 有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该 软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片 等)或处理器(processor)执行本发明各个实施例方法的全部或部分步骤。而前述的存 储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0049] 以上,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉 本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在 本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
【权利要求】
1. 一种安全控制器,其特征在于,包含有: 管理模块,其提供至少一安全设备或至少一安全应用进行注册; 流轮询模块,其轮询一网络控制器获取数据流; 流监视模块,其根据触发条件检测该数据流;以及 事件调度模块,其根据触发条件的检测结果生成一执行策略事件。
2. 根据权利要求1所述的安全控制器,其特征在于,该管理模块包含: 设备管理模块,其提供该至少一安全设备进行注册;以及 应用管理模块,其提供该至少一安全应用进行注册; 其中,该事件调度模块根据注册过的安全设备生成一设备事件,且该事件调度模块根 据注册过的安全应用生成一应用事件; 其中,根据注册过的安全应用发出的一订阅请求,该事件调度模块通过该应用管理模 块将检测过的数据流发送至该注册过的安全应用。
3. 根据权利要求2所述的安全控制器,其特征在于,更包含一策略解析模块,其解析该 应用管理模块接收到的策略,策略解析模块根据该事件调度模块的执行策略事件生成相对 应的执行指令,其中该应用管理模块接收到的该策略是由发出订阅请求的安全应用发出的 策略。
4. 根据权利要求3所述的安全控制器,其特征在于,更包含一指令推送模块,其将该策 略解析模块生成的执行指令推送至该网络控制器。
5. 根据权利要求2所述的安全控制器,其特征在于,更包含一设备库,其连接到该设备 管理模块,该设备库记录注册过的安全设备。
6. 根据权利要求2所述的安全控制器,其特征在于,更包含一应用库,其连接到该应用 管理模块,该应用库记录注册过的安全应用。
7. 根据权利要求1所述的安全控制器,其特征在于,更包含一流数据库,其连接到该流 监视模块,该流数据库记录该流监视模块所检测的数据流。
8. 根据权利要求1所述的安全控制器,其特征在于,该设备管理模块根据触发条件的 检测结果调度注册过的安全设备。
9. 一种安全架构系统,其特征在于,包含有: 至少一安全应用; 至少一安全设备; 一安全控制器代理; 一网络控制器;以及 安全控制器,其包含有: 一管理模块,其提供该至少一安全设备或该至少一安全应用进行注册; 一流轮询模块,其轮询一网络控制器获取数据流; 一流监视模块,其根据触发条件检测该数据流;以及 一事件调度模块,其根据触发条件的检测结果生成一执行策略事件; 其中,该安全控制器分别连接该安全应用及该安全设备,并通过该安全控制器代理连 接该网络控制器。
【文档编号】H04L29/06GK104125214SQ201410305940
【公开日】2014年10月29日 申请日期:2014年6月30日 优先权日:2014年6月30日
【发明者】裘晓峰, 刘文懋, 赵粮, 陈鹏程, 文旭涛, 高腾, 何新新, 任秋峥 申请人:北京邮电大学, 北京神州绿盟信息安全科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1