SDN网络密码防护体系架构研究
2018-09-10梁钰解建伟
梁钰 解建伟
摘要:软件定义网络(SDN)技术以其集中式智能化管理、控制面与数据面解耦和以应用为主导的可编程特性等特点为下一代网络的发展提供了新的思路,同时也给传统网络中的密码防护体系带来了新的挑战。介绍了密码保护技术和SDN安全保密技术的研究现状,从SDN密码防护功能体系与技术体系2个方面阐释了SDN网络密码防护体系架构,并介绍了SDN网络密码防护原型系统,为基于SDN网络架构的新一代网络提供高可靠的密码保障服务。
关键词:软件定义网络;软件定义安全;密码防护体系
中图分类号:TP309文献标志码:A文章编号:1008-1739(2018)08-58-4
Research on Architecture of Software Defined Network Cipher Protection System
LIANG Yu1, XIE Jianwei2
(1. The 54th Research Institute of CETC, Shijiazhuang Hebei 050081, China; 2. Hebei Branch, Zhonghua Communication System Co., Ltd, Shijiazhuang Hebei 050081, China)
0引言
传统封闭式的网络架构难以支撑当前网络规模的不断扩大和网络业务的复杂多变,网络的功能与性能面临着严重挑战。SDN技术提出的数据面與控制面分离的网络体系架构有效地解决了这一问题,但同时也给传统网络的密码防护体系带来了新的挑战,IP网络传统的密码防护机制对网络层固定字段加密,使SDN中基于流表的数据转发机制无法发挥最大效能,相对简单的报文防护模式也无法满足多样化的流量防护需求。SDN标准接口协议Open Flow中安全传输方式为可选项,有可能受到攻击者发起的协议攻击,同时集中式的控制器更容易成为攻击目标,需要加强网元和协议数据的防护能力,控制器还提供包含配置面在内的大量API,供用户按照自己的需求编写APP,而第三方提供的APP中很可能包含漏洞、后门,或者不安全的API调用,特别是越权调用配置管理API,将会给控制器带来灾难性的后果[1]。
1研究现状
1.1网络密码保护技术发展现状
随着计算机网络通信技术的发展,IP协议已经成为网络层的主流协议,能运行在各种物理介质和链路层协议之上,并且任何传输层协议和应用层协议都能将IP层协议作为承载层[2]。在网络呈现IP泛在化的趋势下,考虑到IP层协议较为稳定,对网络层进行密码防护较为稳定和可靠。
网络层IP密码机是基于统一的IP承载网的加密专用设备,既不限制上层应用,也不限定下层物理链路网,具有非常优秀的适应能力,是目前信息网络最为主要的密码防护机制。在IP层实施密码防护[3]是国内外普遍采用的一种有效防护机制,能够确保网络传输信息的机密性、完整性、可控性、可用性和不可否认性,可以灵活实现子网对子网、子网对终端、终端对终端的安全接入和互联,也是当前最能适应IP泛在化的安全保密手段。
如图1所示,对于存在多安全保密防护等级的虚拟网络和信息系统,基于IP加密的密码防护机制可根据不同信息系统建立不同的虚拟专用网(Virtual Private Network,VPN)[4],为VPN内部的信息、主机和其他通信设备提供不同的网络边界密码防护,实现同一物理网络不同业务系统隔离。
1.2 SDN安全保密技术研究现状
作为下一代网络的发展方向,SDN在带来诸多机遇的同时,也面临着新的挑战,尤其是在安全方面。随着SDN研究的深入和厂商的大量参与,SDN的安全问题越来越受到重视。SDN安全保密技术[5]包括SDN自身的安全和基于SDN的安全保密。
(1)SDN自身安全保密
与传统封闭网络设备相比,SDN开放式接口的引入、集中式的控制器将给网络安全带来高的风险。安全的认证机制和框架、安全策略的制定等,将成为SDN安全发展的重要保证。
德克萨斯州Texas大学和SRI公司的研究团队针对SDN的安全进行了研究,提出了包含SDN的安全操作系统FortNOX等在内的多种安全解决方案。斯坦福大学的Martin Casado和其研究团队提出了Ethane架构,该架构通过一个中央控制器向基于流的以太网交换机下发策略,从而对流的准入和路由器进行统一管理。
(2)基于SDN的安全保密
SDN技术在网络安全防护领域的应用研究也是热点领域之一,并提出了软件定义安全(Software Defined Security,SDS)[6]的技术思路。SDS的特点是将安全的控制平面和数据平面进行分离和重构,实现模块化、服务化及可重用。SDS将现有安全技术分解成基本安全服务,并进一步划分为原子安全服务。然后,通过SDN控制层的可编程能力及安全防护控制器,利用服务重构技术和安全状态表将各安全原子服务有机整合,形成定制的安全能力。
2 SDN密码防护体系架构
2.1密码防护功能体系
本文提出了分层、多级的SDN网络密码安全防护功能体系,在数据层面,提供业务数据流的链路、网络及传送层加解密功能;在管控层面,针对SDN网络各层在控制、管理和配置平面面临的安全威胁,提供SDN应用层安全、SDN控制层安全和SDN基础设施层安全,如图2所示。
SDN应用层安全主要针对工作于SDN北向接口的各类协议,SDN APP提供密码安全防护,SDN控制层安全主要针对SDN控制器提供各类密码安全防护,基础设施层主要针对各类SDN转发器及业务数据提供密码安全防护功能。
(1)SDN应用层安全
①认证:SDN应用对SDN控制器进行认证,以确保SDN控制器的合法性,可选用的机制包括预置密钥、基于证书的密钥等多种认证方式;
②数据机密性保护:选用符合标准的加解密算法对从SDN应用层向SDN控制器层下发的网络策略进行数据机密性保护;
③数据完整性保护:从SDN应用层向SDN控制器层下发的网络策略进行数据完整性防护,可采用的防护手段有Hash、MAC、HMA及数字签名等;
④密钥、证书管理:对SDN进行安全防护所需的各类密钥和证书的统一管理;
⑤应用防护:在SDN应用层应部署攻击检测工具以应对各類对SDN应用程序的攻击行为。攻击检测工具可采用基于签名的可信检测、异常行为检测等多种方法;
⑥防护管理支撑:向密码防护管理模块提供该层安全功能所需的安全防护管理接口功能。
(2)SDN控制层安全
①认证:SDN控制器对SDN应用层的应用和基础设施层的转发器分别进行认证,以防止假冒攻击,SDN控制器对管理员的身份进行认证以防止对控制器的误用;
②授权:SDN控制器对SDN应用、管理员下发各类权限规则进行授权管理,可采取的授权策略包括黑白名单、ACL及RBAC等多种方式;
③数据机密性保护:选用符合标准的密码算法,对SDN应用层接收的各类网络策略和流表操作进行加解密操作;
④数据完整性保护:采用Hash、MAC、HMA及数字签名等防护手段对流表、各种网络策略以及各类配置数据进行完整性保护;
⑤密钥/证书管理:对SDN进行安全防护所需的各类密钥和证书的统一管理;
⑥安全流表快速处理:SDN控制器层应能够对不同类型的流表进行区分,用于安全处理的流表需进行快速的处理和实时下发;
⑦安全流表权限控制:SDN控制器采用流表分级命名等方法,提供判断不同的应用对流表的插入、升级、删除等操作的权限的能力,以防止对流表的冲突行为;
⑧安全监测支持:SDN网络的管理员应支持对整个网络安全状态的监测,特别是一些安全策略的效果;
⑨操作系统加固:尽可能地降低操作系统中的各类安全风险,对操作系统中无用的模块进行裁剪、叠加可信等安全措施,尽量为SDN控制器提供安全可信的运行环境。
(3)SDN基础设施层安全
①认证:SDN转发器应提供对SDN控制器的认证,以防止假冒的SDN控制器对转发器的控制,SDN转发器应提供对管理员身份的认证,以防止恶意的操作;
②授权:SDN转发器应对SDN控制器和管理员实时授权管理,可采取的策略有黑白名单、ACL及RBAC等;
③数据机密性保护:对从SDN控制器下发的流表进行解密,支持对向SDN控制器发送的流表查询请求进行加密,对从SDN管理界面下发的配置管理类策略进行解密,对SDN转发器中存储的敏感信息进行加密,以防止数据窃取;
④数据完整性保护:采用Hash、MAC、HMA及数字签名等手段,对从SDN控制器下发的流表数据进行完整性验证,对向SDN控制器发送的流表查询请求数据进行完整性防护,对SDN转发器中存储的敏感信息进行完整性防护,以防止数据篡改;
⑤密钥、证书管理:对SDN基础设施进行安全防护所需的各类密钥和证书的统一管理;
⑥流表溢出防护:在使用一些常用的抵御缓冲区溢出攻击的手段基础之上,SDN转发器的流表管理软件应能够决定哪些流表项可以删除并从SDN控制器进行重新同步;
⑦防护管理支持:向密码防护管理模块提供该层安全功能所需的安全防护管理接口功能;
⑧业务数据加解密:为用户业务数据按需提供链路层、网络层和传送层的加解密功能,保护数据传送过程中的真实性、完整性和机密性。
(4)密码防护管理
①提供对SDN网络中的各类平台资源的访问控制;
②监控登录到平台中的用户,对有问题的用户进行监管和审计;
③汇聚来自各层的统计信息以监控安全攻击事件。
2.2密码防护技术体系
SDN网络密码防护技术体系架构如图3所示,分为基础设施层、控制层和应用层。
SDN网络管控层面的安全保密,主要通过对南北向接口的安全加密实现。对于应用层与控制器层之间的北向接口,采用TLS或者HTTPS协议进行安全防护;对于控制器和转发器间的南向接口(包括OpenFlow、OF-CONFIG、OVSDB、PCEP、BGP-LS、I2RS、OpFlex、SNMP、NetCONF及XMPP等协议),采用TLS或者IPSec进行安全防护。
SDN网络数据层面的安全保密,主要采用2层VPN、IPSec VPN及SSL VPN技术,为用户数据的传送过程提供安全保护。
由于SDN网络实现了基于流的调度,而不是传统网络中基于IP包的调度,这就要求安全服务和管控也要保持相对应的细粒度,在维持网络性能的同时也提升安全服务的防护效率和性能、SDN控制层和基础设施层的分离,以及控制层的可编程特性使得密码资源调度任务可以更有效、更低成本、更快速地自动化,从而降低密钥管理成本,提高密码防护的及时性和效率。
3 SDN密码防护原型系统
SDN网络密码防护原型系统由嵌入式密码机、独立式密码机、SDN密码机、密码防护控制器、SDN网络控制器和SDN交换机等组成。
①嵌入式密码机部署在SDN交换机、SDN网络控制器和APP应用终端中,为协议代理、隔离转发等数据面功能提供认证授权、信息加解密等安全保密服务。
②独立式密码机按需分别部署在全网,提供高并发海量数据的签名验证、数据加解密等安全保密服务。
③SDN密码机部署在网络边缘,为流量数据的安全传输提供细粒度的安全保密服务。
④SDN密码防护控制器部署在控制层,北向提供密码应用服务、资源与设备管理等APP,南向为密码装置提供密码协议配置、密钥管理和态势监控等控制功能。
4结束语
随着SDN技术在通信网络中的广泛应用,由于其控制集中、应用层开放等特点,引发了传统密码防护体系的诸多问题,为保障向通信网络提供高可靠的密码服务,从功能体系和技术体系两方面提出了SDN网络的密码防护体系架构,构建了SDN网络密码防护原型系统。
参考文献
[1]刁兴玲.SDN崭新架构下网络安全如何保障[J].通信世界, 2015(3):33-34.
[2]谭兴烈.TCP/IP协议安全与IP层加密技术[J].信息安全与通信保密,2001(12):38-40.
[3]吴训吉.专用IP网络信息安全技术研究[D].西安:西安电子科技大学,2012.
[4] CarltonR Davis.IPSec VPN的安全实施[M].周永彬,冯登国,徐震,等,译.北京:清华大学出版社,2002.
[5]刘文懋,裘晓峰,王翔.软件定义安全:SDN/NFV新型网络的安全揭秘[M].北京:机械工业出版社,2016.
[6]刘文懋,裘晓峰,陈鹏程,等.面向SDN环境的软件定义安全架构[J].计算机科学与探索,2015,9(1):63-70.