APP下载

基于SDN架构的地址跳变技术研究*

2015-06-23陈世康

通信技术 2015年4期
关键词:流表数据流IP地址

高 诚,陈世康,王 宏,董 青

(西南通信研究所,四川 成都 610041)

基于SDN架构的地址跳变技术研究*

高 诚,陈世康,王 宏,董 青

(西南通信研究所,四川 成都 610041)

网络嗅探作为网络攻击的前奏,对于网络安全存在较大威胁。为增强网络本身的抗嗅探窃听能力,在移动目标防御网络的地址跳变技术的研究基础上提出了一种基于传输过程的地址跳变方案,主要思想是在SDN网络架构下,控制器通过为传输路由上交换机下发不同流表来实现IP地址的跳变。仿真结果表明,可以以较小的网络开销实现跳变机制,并使网络对于网络嗅探达到较高的防御能力。

SDN;OpenFlow协议; IP地址跳变;移动目标防御

0 引 言

在当前的网络中,网络安全防御所需的花费与恶意攻击者为攻破网络的努力严重不对等,网络防御者往往需要为整个系统叠加层层安全技术手段,而攻击者只需利用某个漏洞即可接管目标。移动目标防御[1](Moving Target Defense)的概念由此诞生,移动目标防御技术摒弃以构建无缺陷防御系统的方式维护网络安全性,而代之以创造开发出一种多样的、持续随时间无规律变化的机制来提升对于网络攻击的复杂度和花费,从而限制漏洞的外泄以及攻击的成功率[2]。

其中,地址跳变技术(IP hopping or IP mutation)是移动目标防御网络的一项重要内容,地址跳变是指网络节点拥有随机变化本身地址或者地址在传输过程中不断变化的能力。由于地址是节点的唯一标识,在传统的分布式网络中实现地址跳变会产生以下困难:一是地址随机变化将使其他与之通信的节点无法及时感知,容易造成会话中断;二是终端主机地址随机变化往往需要改变终端主机配置,限制了地址变化的频率,在实际应用中也存在着可操作性的问题。

近年来,出现一种以OpenFlow[3]技术为代表的软件定义网络(SDN,Software Defined Network)网络架构。OpenFlow技术是斯坦福大学McKeown教授与其学生Casado在可编程网络的研究中提出的一种网络技术,起初是为了在校园网进行网络创新和实验而设计的实验平台[3]。随后,McKeown等人在此基础上提出了SDN的概念并得到广泛认可。2011年,McKeown等研究者组织成立开放式网络基金会(ONF,Open Networking Foundation),专门负责相关标准的制定和推广,包括OpenFlow标准、OpenFlow配置协议和SDN白皮书,大大推进了OpenFlow和SDN的标准化工作,也使其成为全球开放网络架构和网络虚拟化领域的研究热点[4]。

SDN架构的主要思想是是转发平面(Data Plane)与控制平面(Control Plane)分离,控制平面由一种名为Controller的实体实现网络的控制管理功能,而转发平面只负责执行控制平面下发的数据转发策略。由于SDN架构的集中式管控的特性,可基于数据流进行地址跳变,避免会话中断;同时可利用控制器控制传输路径上的交换机对匹配的数据流进行数据包地址的改写,实现地址在传输过程中不断变化的能力。因此在SDN网络架构下实现地址跳变较为简便可行。

本文主要研究内容是SDN网络架构下如何实现网络地址的随机化跳变技术,以下在相关研究一节中将会介绍本文研究内容的最新进展,然后会在地址跳变模型一节中介绍本文提出的一种基于传输过程的地址跳变模型,最后将会分别在仿真验证和结语两节中给出仿真实现的结果和进行分析总结。

1 相关研究

在地址跳变技术研究方面,出现了包括APOD[5],DyNAT[6]和NASR[7]等在内的研究成果,APOD使用基于地址和端口随机的“跳变隧道”伪装目标主机,在IP地址跳变过程中需要客户端与服务器端的协作;DyNAT提供一种在数据包进入核心网或公共网之前进行IP变化的机制,以避免中间人攻击;NASR是一种LAN级别的基于DHCP更新的网络地址随机跳变策略,用以防范Hitlist worms攻击。但是上述技术均没有提供一种无需改变终端主机配置即可防范内外部侦听攻击的IP跳变机制。由此,Ehab Al-Shaer等人提出了一种具有高速变化和难以预测特性的IP地址变化技术,简称RHM(Random Host Mutation)[8],RHM需要通过增添中心式的实体Moving Target Controller和分布式实体Moving Target Gateway来进行实际地址rIP和虚拟地址vIP的转变。

之后,Ehab Al-Shaer等人在RHM的基础上结合新出现的OpenFlow技术对RHM作了进一步地改进,使用OpenFlow中的NOX Controller实现RHM中Moving Target Controller和Moving TargetGateway的功能,得到OF-RHM(OpenFlow Random Host Mutation)[9]模型,相对于RHM,OF-RHM由于SDN灵活的基础架构可以更为有效以及以更小的处理开销开发和管理主机地址随机跳变功能。

2 地址跳变模型

本文在上节所述研究成果的启发下,提出了一种新的SDN网络下基于传输过程的地址跳变模型。本模型的主要特征是实现了通信数据流所携带的源目的IP地址在转发过程中的发生跳变的功能,而不必要对源、目的主机固有IP地址进行重新配置。相比于RHM模型和OF-RHM模型,本模型将地址跳变的过程从主机终端迁移到数据传输的路径上,在数据流经过每一跳交换机后,包头的地址均会发生随机变化,而在OF-RHM模型中,地址从rIP与vIP之间的变化发生在第一跳OpenFlow交换机和最后一跳OpenFlow交换机,相比上述两种模型,本模型可以使得地址的跳变具有更高频率以及地址更加难以预测的特点,从而使得网络的一项属性----网络节点地址不断发生变化,提升了网络攻击的复杂度和花费,降低网络被成功攻击的风险。

本模型的跳变过程简而言之就是每一跳OpenFlow交换机对于需要转发的数据包根据匹配的流表项进行更改源目的IP地址的操作后再进行相应转发,同时也保证了数据包按照既定路由到达目的节点。图1即是本过程的简单示意(其中r1、r2为实际地址,v1、v2等为虚拟地址)。

图1 地址跳变示意

我们知道,在OpenFlow协议中,控制器对于OpenFlow交换机的控制是通过下发流表实现的,每一台OpenFlow交换机负责维护一张流表并按照流表完成转发或丢弃动作[10]。在部署OpenFlow协议的SDN网络中,当一条流的第一个包到达第一台OpenFlow交换机时,交换机由于没有匹配的流表,会按照OpenFlow协议的规定将包头信息整合成OpenFlow中定义的PacketIn消息包发送到Controller,控制器会根据源目的地址寻找到一条最佳路径,并依次对路径上的交换机下发流表,为这条数据流搭起从源到目的的一条通路。

基于传输过程的地址跳变技术的主要思想就是利用SDN网络中的控制器为传输路由上的OpenFlow交换机下发不同匹配项、不同执行动作的流表来实现IP地址跳变的。

地址跳变具体实现流程如图2所示,控制器在收到交换机因为到达数据流无匹配流表而上报的PacketIn消息后,根据PacketIn消息获取数据流的包头等信息并进行一系列的判断,若是数据流的源目的主机不在同一个OpenFlow域内或是获取不到相应路由,则将执行泛洪操作;若是获取到传输路由,则遍历路径上的交换机并进入流表下发阶段。在流表下发阶段,控制器负责维护两张随机产生的IP地址表,分别为随机源IP地址表和随机目的IP地址,两张表大小均为n-1(n为路由上交换机的个数),控制器针对传输路由方向上的交换机进行遍历并判断所处位置,根据交换机所处位置,下发不同的流表。

图2 地址跳变具体流程

具体下发流表的规则如下:

1)若是首交换机,则下发的流表Match匹配项为匹配原始源、目的IP地址,流表Actions为更改数据流的源和目的IP分别为随机源IP地址表和随机目的IP地址表的第一项,以及从相应端口转发。

2)若为末交换机,则下发的流表Match匹配项为匹配随机源IP地址表和随机目的IP地址表的第n-1项,流表Actions为更改数据流的源和目的IP分别为原始源、目的IP地址,以及从相应端口转发。

3)若为第i跳交换机,则下发流表Match匹配项为匹配随机源IP地址表和随机目的IP地址表的第i-1项,流表Actions为更改数据流的源和目的IP分别为随机源IP地址表和随机目的IP地址表的第i项。

3 仿真验证

为验证本文提出的基于传输过程的地址跳变模型,本文采用基于开源SDN控制器Floodlight和在SDN技术研究中应用广泛的网络仿真工具Mininet搭建软仿真环境进行模型功能验证。

本文采用如图3所示的简单线性网络拓扑进行仿真。实验开始,在Mininet的控制台输入命令:h1 ping h4(h1与h4的IP地址分别为10.0.0.1和10.0.0.4),使得图中的Host1向Host4发送ICMP协议请求包,该过程进行之前Host1会首先发送ARP广播包询问Host4的MAC地址,由于是广播包各交换机会对其执行广播操作,当Host4接收到后并向Host1发送ARP响应时,由于此时不是广播包,因此交换机会产生地址跳变的动作。Host1得到ARP响应后,发送ICMP协议请求包,此时通过网络抓包工具wireshark对控制器端口进行抓包,发现有4条OpenFlow协议的流表下发过程(Flow Mod),表1为控制器下发的流表部分信息统计。

图3 仿真拓扑

表1 控制器下发流表部分信息统计

从表1中可以看出,每台交换机的流表操作就是先匹配上一跳交换机转发后的随机源、目的IP地址(第一跳switch1匹配原始源、目的IP地址10.0.0.1和10.0.0.4),然后执行更改源、目的IP地址为新的随机IP(最后一跳switch4执行将源、目的IP更改为原始IP地址10.0.0.1和10.0.0.4)并从指定端口转发的操作Actions。如此之后,在首末交换机之间传输的数据包的源、目的IP地址均为随机IP,从而实现隐蔽IP地址的目的,保障了数据流的安全性。

为探究基于传输过程的IP地址跳变的网络开销,本文对不同路由跳数(route hops)的路由的平均传输时延进行了实验并记录,同时也记录了非IP地址跳变的正常传输过程的平均传输时延,结果如图4所示。显而易见,在相同的跳数条件下,IP地址跳变的时延较正常传输过程的时延有一定的提升,大小在10-6s的数量级(在不同的网络环境和硬件条件下测量结果可能有所不同)。

图4 IP地址跳变与正常转发的时延对比

4 结 语

本文在移动目标防御中的地址跳变技术现有成果的研究基础上,创造性地提出了在SDN网络架构下实现的一种基于传输过程的IP地址跳变机制。这种基于流的地址跳变机制可使数据流在传输过程中不断改变所携带的源、目的IP地址为随机IP地址,对于针对源、目的IP地址的主机进行监听的恶意活动有较强的防御能力。通过仿真测试,发现这种机制对于网络开销的提升比较微小,所以对于在搭建网络安全性要求较高的网络时可以实施这种防御机制,以增强网络的安全性能。

同时,本文提出的地址跳变机制是针对网络层IP地址的一种跳变机制,推广开来,可以同时对数据链路层的MAC地址以及传输层的TCP/IP端口进行同时跳变,使得在网络各层看来,传输过程中的数据流完全隐匿在链路上,可全方位增强网络的抗窃听能力。在实现方面,OpenFlow协议的流表项匹配项同时包含对于源、目的MAC地址,源、目的TCP/IP端口的匹配;OpenFlow的执行动作相对应的包含对于源、目的MAC地址,源、目的TCP/IP端口的修改,可类比本文方案实现MAC地址跳变和端口跳变。

[1] 张晓玉,李振邦.移动目标防御技术综述[J].通信技术,2013,46(06):111-113. ZHANG Xiao-yu,LI Zheng-bang.Overview on Moving Target Defense Technology[J].Communications Technology,2013,46(06):111-113.

[2] NITRD CSIA IWG Cybersecurity Game-Change Research & Development Recommendations[R].U.S:NITRD,2010.

[3] McKeown N, Anderson T,Balakrishnan H,et al. Open Flow: Enabling Innovation in Campus Networks[C]. SIGCOMM Comput. Commun. Rev.38(2), 69-74 (2008).

[4] 左青云,陈鸣,赵广松等.基于OpenFlow的SDN技术研究[J].软件学报,2013,24(05):1078-1097. Zuo QY, Chen M, Zhao GS, et al. OpenFlow-based SDN technologies[J]. Journal of Software, 2013,24(5):1078-1097.

[5] Atighetchi M, Pal P, Webber F,et al. Adaptive Use of Network-centric Mechanisms in Cyber-defense[J]. In ISORC ’03, Page 183. IEEE Computer Society, 2003.

[6] Kewley D, Fink R, Lowry J, et al. Dynamic Approaches to Thwart Adversary Intelligence Gathering[C]. In DARPA Information Survivability Conference Exposition II, 2001. DISCEX ’01. Proceedings,Volume 1, Pages 176-185 vol.1, 2001.

[7] Antonatos S, Akritidis P, Markatos E P, et al. Defending Against Hitlist Worms Using Network Address Space Randomization[J].Comput. Netw., 51(12):3471-3490, 2007.

[8] Ehab Al-Shaer,Qi Duan. Random Host IP Mutation for Moving Target Defense[R].Technical Report UNCC-CYBERDNA-0728,CyberDNA Lab,University of North Carolina at Charlotte, Charlotte,NC, July 2011.

[9] JAFAR H J,EHAB A, DUAN Q. Openflow Random Host Mutation: Transparent Moving Target Defense Using Software Defined Networking[J]. HotSDN,2012(12):127-132.

[10] Open Networking Foundation. OpenFlow Switch Specification Version 1.1.0[S]. Feb. 28, 2011.

IP Mutation Technology based on SDN Network

GAO Cheng, CHEN Shi-kang, WANG Hong, DONG Qing

(Southwest Communications Institute, Chengdu Sichuan 610041,China)

As the prelude of network attack , network sniffering is a big threat to the network security. Based on the research achievement of moving target defence, a mechanism or strategy of IP address mutation in transmitting process is proposed,thus to enhance immunity of the network to sniffering. The main idea of this mechanism is that under the frame of SDN network,the controller by using OpenFlow protocol, writes different flow-tables to switch on the route and realizes IP mutation. Simulation results indicate that the IP mutation may be achieved at a comparatively low network overhead while a better network defense capability to the network sniffer for the network obtained.

SDN;OpenFlow protocol; IP mutation;moving target defense

date:2014-10-08;Revised date:2015-02-21

TN911

A

1002-0802(2015)04-0430-05

高 诚(1992—),男,硕士研究生,主要研究方向为网络安全;

陈世康(1970—),男,研究员,主要研究方向为宽带通信网络;

王 宏(1978—),男,博士,高级工程师,主要研究方向为网络架构与技术体制;

董 青(1988—),男,硕士,助理工程师,主要研究方向为通信网络技术。

10.3969/j.issn.1002-0802.2015.04.010

2014-10-08;

2015-02-21

猜你喜欢

流表数据流IP地址
基于匹配动作表模型的可编程数据平面流表归并
汽车维修数据流基础(上)
基于时序与集合的SDN流表更新策略
汽车维修数据流基础(下)
铁路远动系统几种组网方式IP地址的申请和设置
软件定义网络中一种两步式多级流表构建算法
基于数据流特性的MPTCP数据流调度算法研究
一种高效的OpenFlow流表拆分压缩算法
公安网络中IP地址智能管理的研究与思考
《IP地址及其管理》教学设计