DiffSec:一种差别性的智能网络安全服务模型

邓 理 吴伟楠 朱正一 陈 鸣

(南京航空航天大学计算机科学与技术学院 南京 211106)

摘 要 网络安全对于现代信息社会越来越重要,随之而来的是网络安全的代价也越来越高.如何在保证网络安全的前提下,尽可能降低网络安全的开销是一个挑战性的任务.基于不同的用户群体具有不同安全需求的事实,提出了根据用户安全等级不同而提供有差别的安全服务的模型DiffSec,论证了该模型能够有效降低网络安全服务开销和提升网络性能,能够适应网络安全技术长期发展的需要.基于该模型,采用NFV和SDN结合的技术设计了安全接入网络(SANet)的结构和相应的智能控制方法,实现了原型系统.原型系统的实验结果表明:SANet不仅能够提供灵活、正确的网络安全功能,也具有良好的网络性能和实用价值.

关键词 网络安全;软件定义网络;网络功能虚拟化;智能控制;原型系统

随着网络应用在各行各业的普及,网络攻击手段层出不穷.为了防范网络安全威胁,现行的TCPIP网络体系结构采用“打补丁”的思路,通过不断增加具有不同安全功能的专用设备,诸如防火墙、入侵检测系统(IDSIPS)、深度报文检测(DPI)等中间盒来加以应对.这导致了安全中间盒的类型、数量越来越多,并且使网络的结构越来越复杂、开销越来越高、性能越来越差、维护难度越来越大[1],从而使得网络运营商不堪重负,严重抵消了IP技术带来的性价比优势.更严重的是,如果我们任由这种趋势蔓延,互联网可能变成一个功能上令人鼓舞,而技术上难以驾驭,开销上难以承受的人造巨作.然而,提供一个完整的IP网络安全性解决方案是非常困难的,它涉及到IP网络体系结构等许多根本性问题[2].

考虑到在网络的每个层次、每种协议设计上的不完善之处都可能成为网络攻击的对象,因此网络安全问题实际上是许多安全问题的集合,难以通过加入具有某种安全机制的安全设备就能一劳永逸地保证网络的安全性[3].“打补丁”的网络安全架构浪费了大量资源,也导致网络性能越来越差.这就要求网络安全系统的架构应当能够根据网络安全需求进行智能定制,以改变现有的网络安全系统存在的结构与功能僵化问题:1)能够根据网络安全的发展需求,采用软件定义网络(software-defined networking, SDN)技术灵活定制网络安全系统的架构;2)能够根据网络安全机制多样化的需求,采用网络功能虚拟化(network function virtualization, NFV)的方式定制各种网络安全机制和功能,降低资本支出(CAPEX)和运营支出(OPEX),因此这种将SDN与NFV综合的技术是设计实现智能网络安全系统的理想候选者.

在另一方面,不同的用户群体有着不同的安全需求和业务需求,相应地网络对于不同用户群体也应当提供不同的网络服务.例如某类用户一直遵从网络安全规则,没有违反网络安全的不良记录.我们就没有必要对这类用户部署高强度、高开销的安全中间盒处理序列(即安全服务链).只需要部署用户业务所需的中间盒和低开销的安全服务链,提供网络服务和监视他们的通信行为,如Firewall→IDS→NAT.而对于出现网络攻击概率较大的高威胁用户群体,就应当由特定的安全服务链进行专门安全监测和防范处理,如Firewall→IDSIPS→DDoS检测→DPI→NAT.可见,在保证业务需求和网络安全的情况下,为普通用户部署的安全服务链与高威胁用户群体部署的安全服务链相比,CAPEX和OPEX低,处理时延也低.

根据观察与测试,绝大多数网络用户都是不会主动对网络进行恶意攻击的普通用户.也存在普通用户因为种种原因,如其设备没有及时下载操作系统补丁程序等,导致被恶意攻击者利用,成为发起网络恶意攻击的傀儡机.我们将偶尔出现网络恶意行为的用户称为观察用户.的确存在少量用户,他们为了达到某种目的,在网络中尝试恶意行为,向网络中的其他用户发起恶意攻击,我们将其称为可疑用户.由此,我们将网络中的用户分为3类群体:普通用户、观察用户和可疑用户,其中观察用户和可疑用户的群体数量通常较少,普通用户的群体数量占多数.这样,由于为多数的普通用户提供的网络服务的中间盒处理序列结构简单且开销支出低,而为可疑用户或观察用户提供专门安全服务的中间盒序列尽管昂贵但数量有限,从而使得网络安全服务整体开销大为降低.我们将这种为不同的网络用户群体提供不同安全级别的服务称为区分安全(differentiated security, DiffSec).

对支持DiffSec的网络安全体系结构具有4项要求:

1) 能够识别用户身份设定其安全类别,也能够通过其通信过程自动分析其安全行为,设定其安全类.我们将在第2节中详细讨论.

2) 为具有不同安全类别的用户群体提供不同的安全服务,如设法为普通用户类提供安全检测服务,为特定的可疑用户类提供特定的安全防范服务,为观察用户类提供类别转换服务等安全服务,我们将在第2.2节中讨论.

3) 能监控用户行为,基于用户安全行为实时变更用户安全类别,动态调整用户的安全服务链.我们将在第3节中讨论.

4) 能够在保证网络安全的同时保证网络的性能要求,减少CAPEX和OPEX.我们将在第4节中用原型系统实验来验证它.

因此,DiffSec架构设计面临4项挑战:

1) 新用户接入识别和老用户的信息存储;

2) 实时调控用户的安全级别,自动变更网络为用户提供的安全服务;

3) 支持安全服务链动态调控的,灵活地变更网络转发规则;

4) 不影响用户原本的业务需求和网络服务.

显然,这种支持DiffSec的网络安全体系结构是一种智能的新型网络安全体系结构,需要支持实时和动态安全中间盒功能配置以及灵活的流量转发,具有从用户安全行为中学习的智能安全功能.SDN实现了转发和控制的分离,网络可编程化,通过编程配置转发规则,为流量重定向提供了一个有前景的替代方案.NFV把中间盒的功能从硬件中移出并放到软件中,中间盒变为运行在虚拟机中的软件,降低了专用设备的购买成本,虚拟中间盒部署和迁移变得灵活可控.软件定义的NFV利用网络虚拟化和逻辑集中式管理,为DiffSec的部署提供了极大的灵活性、可编程性和智能性.本文研究目标是,论证DiffSec模型能够在保证网络安全的前提下,抑制网络安全开销不断攀升的趋势;在现有IP网络的边缘接入网中,利用SDNNFV技术设计支持DiffSec的智能安全架构.

1 相关工作

网络用户行为会对网络安全产生较大影响,网络安全技术也必须理解网络用户的行为规律.文献[4]认为,理解人类安全行为对于确保有效的信息安全环境是至关重要的,信息安全环境不能够只依赖于技术,因此该文从历史的视角理解和评估这些行为,通过寻找影响它们的重要因素和更好地评估,以帮助用户来保护他们自己;文献[5]讨论了如何基于用户过去的行为预测他们未来的行为,预测方法包括贝叶斯网络建模,预测梯度、用户行为的先验概率的计算、用户行为属性的先验概率计算和未来用户行为的预测等;文献[6]基于粒计算理论研究了网络流量异常检测和微博用户行为分类技术,基于动态认知有效地识别用户类型,对威胁行为进行安全预警;文献[7]利用数据挖掘方法,提出了基于流量和属性相似度的用户分类模型,设计实现了网络用户关联分析系统;文献[8]研究了高可信网络中的用户业务行为,包括对网络用户行为的分类识别和关联分析、用户兴趣偏好分析及预测、用户行为热点分析及业务审计和网络用户行为习惯与偏好分析挖掘技术等.尽管这些研究都仅从某个侧面对用户行为进行了分类研究,但说明用户行为是有规律可循的.

传统的安全中间盒(如防火墙、IDSIPS等)具有基础设施价格昂贵、配置复杂和利用率不高的缺点,将安全中间盒部署在通用服务器上的虚拟化环境中,可以使网络安全系统架构更为灵活和更经济.通过引入软件定义网络(SDN)与网络功能虚拟化(NFV)结合的技术将使这项技术更为高效[9].文献[10]提出了网络安全虚拟化概念,将安全资源和功能置于虚拟化中间盒追溯,用户按需定制安全策略,系统根据所选安全策略转发分组,以达到使用最小的管理开销,最大限度地利用中间盒资源;文献[11]借助SDN对中间盒资源进行监控和管理,设计了一个本地快速恢复机制,网络可以快速响应故障,解决中间盒故障问题,不需要全局重新路由所有流量;通过对SDNNFV技术的分析,文献[12]概述了安全服务链(SSC)的方法,通过链接虚拟安全服务(如虚拟负载平衡器和虚拟防火墙)为SDNNFV拓扑提供安全功能;文献[13]研究了一种基于SDN的策略执行层SIMPLE,网络运营商利用它能够指定逻辑中间盒路由策略,并自动将其转换为考虑物理拓扑交换容量和中间包资源约束的转发规则;文献[14]考虑网络传输时延,设计了一种启发式算法对虚拟网络功能资源进行调度,从而降低了网络总体的服务开销.此外,例如文献[15]这类文章的作者所提出的结合SDN和NFV技术设计高性能负载均衡架构则是从另一种角度探索更加经济的网络服务体系.这些研究为设计实现SDNNFV结合的网络安全技术提供了重要参考.

2 DiffSec模型

本节给出了DiffSec的基本模型,讨论了DiffSec中的用户类型转换,论证了DiffSec安全架构带来的开销增益和时延减小.

2.1 DiffSec建模

对DiffSec模型存在假设:

假设1. IP网络中存在大量用户,用户集合S={Si|i=1,2,…,k}.用户身份可识别,网络通过对用户通信行为数据的分析,能够把用户集合划分为k个不同安全等级的子集;对于无法识别身份的用户单独设为一类.

S=S1S2∪…∪Sk,
ijSiSj=∅,1≤ik,1≤jk,

其中,S1是那些安全等级最高的普通用户集合;S2是那些安全等级较高但可能出现某些安全隐患的观察用户集合;Si(i=3,4,…,k-1)是各种可疑用户集合;Sk则是不能提供身份识别信息的用户,如外部网络用户.

假设2. 某段时间内,每个子集Si产生的总流量分别是fi,其中i=1,2,…,k,单位为位(bit).某时间段内的网络总流量为:为了保证该网络的安全,防止网络被内部恶意用户攻击和被外部攻击者入侵,按照木桶原理,该网络必须采用最严格的安全策略.此时,需要部署m台安全中间盒(security middlebox, SMB),其中每台SMB能够处理一种或多种网络攻击,如IDS能够发现各种攻击、防火墙能够防止外部网络用户未经授权的访问等,则这些中间盒集合共同组成的一条安全服务链(security service chaining, SSC)SSCn,能够检测处理所有已知的网络攻击行为.网络服务提供商要使所有用户流量都要流经这条SSC,用这m台SMB组合而成的SSCn来保障网络安全.图1显示了当前的传统网络安全架构:

Fig. 1 Network security architecture based on multiple security middlebox combinations
图1 基于多种安全中间盒组合的网络安全架构

设安全中间盒SMBi处理负载流量的网络安全开销是αi,其中i=1,2,…,m,单位为unitbit,则该安全服务链SSCn处理负载流量的网络安全开销是:

当前的网络安全架构所需要网络安全总开销为

(1)

Fig. 2 DiffSec-based network security architecture
图2 基于DiffSec的网络安全架构

假设3. 对于S1子集中的用户流量仅需要提供较少的安全服务,如安全检测服务;对于S2中的用户流量,则需要提供安全检测、防火墙过滤和安全类型转换等安全服务;对于Sk(k>2)则需要提供专门的SMB如DDoS检测与处理等,以及深度报文检测(DPI)等多SMB组合服务.这称为DiffSec的网络安全架构,如图2所示:

此时让每个用户子集Si(i=1,2,…,k)的流量分别通过k条不同的安全服务链SSCi(i=1,2,…,k)在每条SSC上部署所需的SMB,而不是所有SMB的组合,使各类用户得到了分类的网络安全服务,这里的交换网络是一种能够区分不同安全类别用户的接入流量,并让不同安全类别的流量流经适当的SSCi.为了激励用户遵从网络安全规则,SSC1的网络性能应当显著优于其他SSCi(i>1)的网络性能.

这种架构将使网络安全开销和处理时延得到优化.在假设1的条件下,ni(i=1,2,…,k)表示SSCi中的SMB数量,则子集Si对应的安全服务链SSCi开销分别是:


ci<ci=1,2,…,k.

DiffSec网络安全架构所需要安全开销为

(2)

比较式(2)与式(1),显然有:

CDiffSec<Ctraditional.

(3)

我们优化网络安全架构的目标是使网络安全服务链的开销总和最小化,约束条件包括中间盒功能可用性、部署中间盒和中间盒处理等的开销.DiffSec架构的处理时延对于普通用户流量已经降至最小,而这部分流量构成了整个网络流量的主体,从而大大降低了网络的平均时延.

2.2 DiffSec中用户类别转换有限状态机

考虑用该模型处理现实中的一个问题,如何有效地处理用户安全类别转换.例如情况1:因没有及时下载并安装操作系统的补丁程序而成为某种攻击的代理的普通用户;情况2:未提供身份信息的用户Sk类用户等.对于情况1,当他们的攻击行为被检测出后,该用户将被标识为Si(i>2)类,并转入相应通道进行处理;当该攻击行为被清除后,它将被转入S2类进行观察.经过一段时间的观察,如果行为正常,可以将其重新转为S1类.然而,如果某用户反复出现类似问题,他应当直接标识为Si(i>2)类,并不再让其返回S1类.对于情况2,可以参照情况1处理流程进行.

Fig. 3 User category conversion finite state machine in case 1
图3 情况1的用户类别转换有限状态机

图3给出了情况1的用户类别转换有限状态机,其中的状态Pi(i=1,2,…,k)表示某用户位于类别Si的情况.每当检测到攻击i时,该用户流就进入Pi(i≠2).系统将会隔离或清除该攻击,并且当ω<N2时,对θ赋值N1,转入状态P2;其中ω用于控制用户安全失误的次数,而θ用于控制进入P2状态的观察时间长度的惩罚因子.

设计该转换有限状态机的原则是:让用户安全等级转换“慢升快降”,即一旦某用户被检测出有攻击行为或没有历史数据说明他可信时,则一定要让他在较低安全等级状态停留一段时间,以便对他行为进行观察,此时由于该类别的网络传输性能比在普通用户类中要低,从而对他的不安全或不确定的行为做出惩罚.而一旦发现某用户进入攻击状态的次数大于N2,则该用户就被确定为应当位于较低安全等级的状态了.事实上,如果我们系统获取了遵从DiffSec架构的网络运行的大量数据后,就能够采用人工智能方法学习到更为有效的状态转换方式和更为优化的控制方法.这是以后研究的课题.

2.3 DiffSec的性能评估

本节采用林肯实验室的KDD99数据集[16]对DiffSec模型进行性能评估.KDD99数据集由DARPA1999数据集经过清洗与整理而来,是IDS与机器学习研究领域中使用最多的数据集[17].KDD99数据集采用文本格式存储,每条连接记录表示一次完整的会话过程,记录了41种不同特征,包含离散和连续2种数据类型.所有特征可分为网络连接的基本特征、网络连接的基于内容的特征和2 s时间单元的流量特征这3类.该数据集将每条记录标记为正常和各种攻击模式.攻击模式分为4类:DoS(denial-of-service),R2L(unauthorized access from remote machine to a local machine),U2R(unauthorized access to local superset privileges by a local unprivileged user)和PROBE(surveillance and probing).

我们将KDD99数据集作为基础数据集,通过对该数据集重组处理,构建具有不同网络安全特征的数据集.我们基于KDD99数据集的标记信息将用户分为正常模式(对应于普通用户类)和攻击模式(对应于可疑用户类之一).根据DiffSec模型,我们对KDD99数据集进行处理:流量fi(i=1,2,…,5)共5类,其中fi的单位为分组(长度为1 480 B).每种类型流量对应的开销为αi(i=1,2,…,5),αi包含了对应流量经过安全服务链的开销βi和对应流量的检测开销γi,即αi=βi+γi.其中αiβiγi的单位为unitpkt.流量构成采用方案:

1) 用k+1倍KDD99数据集流量,按式(1)计算Ctraditional,则开销为

(4)

2) 用k倍KDD99数据集流量作为计算正常流量,再将1倍KDD99数据集流量正常流量分为4份,加上2倍攻击流量,作为4种攻击流量,按式(2)计算CDiffSec,则开销为

(5)

3) 计算CDiffSecCtraditional的比值RDiffSec:


(6)

图4给出了基于式(4)~(6)的计算结果,其中设置αi={0.1,1,1,1,1},βi={1,3,2,2,3},γi={0.1,1,1,1},k={1,2,…,9}.

Fig. 4 Cost comparison of two network security architectures
图4 2种网络安全架构的开销对比

由图4分析可知,随着纵轴流量的增加,DiffSec架构的开销增加幅度很小,表明DiffSec安全架构应对未来更多的网络安全威胁将更具优势.传统网络安全架构的开销随分类数量增加呈正比增长,而DiffSec架构开销与传统架构开销的比值却在下降;当正常流量所占比例越高,DiffSec架构的优势愈明显.其中,当k值趋于无穷时,CDiffSecCtraditional的比值:

(7)

即随正常流量所占比例逐渐增大时,DiffSec架构的开销趋于占传统网络安全架构开销的7%.由此证明DiffSec架构在理论上是有效的.

同时,我们可对DiffSec架构的安全处理时延进行评估.由于每类用户的处理时延主要为对应安全服务链中各个SMB的处理时延与转发时延之和,普通用户类仅需少量的网络安全服务,其处理时延远小于其他安全类型用户的处理时延.将普通用户和具有4类攻击模式用户共5条安全服务链的处理时延分别设为di={5,60,60,60,60},单位为ms.则传统的安全架构的时延:

图5给出了2种网络安全架构的处理时延比较.可以看出,DiffSec架构的每一条SSC的时延均低于Dtraditional架构SSC的,并且由于普通用户的时延远小于Dtraditional的,DiffSec架构的平均处理时延会更小.仍采用开销评估中的流量构成,若传统网络安全架构的平均处理时延为

DiffSec架构的平均处理时延为

(8)

Fig. 5 Delay time comparison of two network security architectures
图5 2种网络安全架构的时延对比

DiffSec架构的平均处理时延的极限为

(9)

Fig. 6 DiffSec average processing delay
图6 DiffSec的平均处理时延

图6给出了式(9)的计算结果.可见,随着流量增大,DiffSec架构的平均处理时延逐渐下降,且趋向于普通用户服务链的处理延时,为的2%.这表明,DiffSec架构可以大大降低网络的平均时延.

3 安全接入网的设计与实现

如何基于当前IP网络体系结构将DiffSec模型付诸实施是个挑战.本节研究了基于SDN与NFV结合的技术,设计了采用DiffSec模型的安全接入网(SANet).探讨了SDN控制器的DiffSec控制方法.

3.1 安全接入网的结构及其工作原理

为了能够与当前IP网络有机融合,我们将采用DiffSec架构的安全系统部署在互联网边缘并与接入网融合.具体而言,我们设计了基于DiffSec架构的接入网,称为SANet.图7显示了用户端系统通过SANet接入公共互联网的一种场景,其中的SANet既可以是NFV环境下的虚拟化SDN接入网络,也可以采用实际SDN设备加上网络安全设备实现.本文以虚拟化场景为例进行讨论.

Fig. 7 A secure access network scenario based on DiffSec
图7 一种基于DiffSec的安全接入网场景

基于NFVSDN技术构建的SANet主要包括3种组件,即SDN控制器、虚拟OpenFlow交换机vOFS和虚拟网络安全功能组件vNSF,它们都能够在符合NFV规范的虚拟机中运行软件模块,表现为虚拟网络功能(VNF)形式.SDN控制器为符合ONF规范控制器.vOFS为符合OpenFlow规范的交换机软件,它们在SDN控制器控制下提供灵活的多层次路由和转发功能.vNSF为能够提供各种特定网络安全功能的组件,多个vNSF可以形成一条SSCi.各种vNSF组件的差异主要在于虚拟机之上运行的VNF不同,例如防火墙、IDSIPS、网络地址转换网关(NAT)和深度报文检测(DPI)等,能够提供访问控制、入侵检测、流量监视、行为分析等多种安全服务.显然,在通用服务器上运行的虚拟化SANet,其整体符合NFV体系结构,其结构可以由NFV编排器定义生成.然而,哪些vOFS之间能够形成转发路径,并与提供特定的SSC安全服务链接,可以由SDN控制器与NFV编排器根据网络安全场景共同决定.vNSF可分为2类:1)用于提供检测所有用户流的安全功能,表示为SSCi;2)用于提供其他可疑用户流的特定安全处理功能,表示为vNSFj(j≥2).在如图7所示的SANet中,所有端系统发往互联网流的首报文都必须先到达控制器.控制器对流进行鉴别,以决定通过哪个SSCi处理,再转发到路由器R1以到达互联网,或者直接被SSCi丢弃.

在实践中,如果发现一种新的网络安全威胁,我们只需研发一种相应的vNSF,再采用软件定义的方法修改编排器和SDN控制器的DiffSec控制流程,就能够实现网络安全系统升级,以应对不断出现的网络威胁.

SANet的工作流程主要包括4个阶段:用户鉴别、控制器选路、SSC处理和安全等级调整.

1) 用户鉴别.当某端系统接入到SANet时,SDN控制器会收到该用户的Packet-in消息.控制器与端系统之间的流鉴别协议就能够透明地鉴别该用户身份并基于用户库信息确定其安全类别.流鉴别协议利用非对称密钥密码来保证用户身份的唯一性和鉴别信息的安全交互,实现用户身份属性鉴别和应用属性鉴别[18].

2) 控制器选路.SDN控制器根据该用户的安全等级和DiffSec控制策略,计算得到最适合的转发路由,并向相关SSCi下发流表形成应用流的路径,使得该用户流能够到达特定的SSCi.

3) SSCi处理.用户的分组流经过特定的SSCi时,安全服务链中的vNSF进行安全检测或特定网络安全处理,得到相应的网络安全服务,使得分组流或被转发到达互联网、或被丢弃.该SSCi也会根据安全处理的结果和该流的状态来决定它是否满足安全类别调整的条件.如果该条件满足,将会通告控制器.

4) 安全等级调整.SDN控制器收到某SSCi发来的安全类别调整请求,要基于DiffSec规则和系统状态进行分析,改变该用户的安全类别并调整网络路径.如何基于当前IP网络体系结构将DiffSec模型付诸实施是个挑战.

3.2 原型系统的实现

为了验证DiffSec模型可行性和SANet设计方案的可用性,我们在实验室的Lenovo ThinkServer RD550服务器上根据图7实现了一个原型系统.该服务器具有2颗Intel Xeon E5-2620 v3 2.40 GHz CPU,RAM为32 GB,操作系统版本Ubuntu Server 14.04.4 LTS,Linux内核版本4.4.0-122-generic.服务器上的虚拟网络环境可以通过2块千兆以太网卡与外部实际网络连接,如一块卡与实验室连接PC和便携机的局域网相连,另一块卡与校园网相连.

1) 基于虚拟中间盒的组件.我们采用Linux容器(LXC)作为虚拟中间盒,在该中间盒上运行相应的VNF,以构建相应的SDN控制器、vOFS、vNSF、虚拟路由器和虚拟主机等.为实现SDN网络功能,我们在LXC中间盒上安装配置了开源的SDN控制器ONOS,形成虚拟SDN控制器;安装配置了Open vSwitch,形成虚拟SDN交换机.为实现vNSF功能,我们在LXC上安装配置了Iptables,SnortSuricata等软件,形成具有防火墙、IDSIPS等特定的vNSF.为了实现IP网络功能,我们在LXC上安装配置了Quagga,形成虚拟路由器和主机.通过使用Linux虚拟网桥技术,我们将虚拟中间盒按照图5连接起来,构建成基于NFV的SANet原型系统.

2) 用户安全服务映射.通过在ONOS控制器运行DiffSec控制程序,我们实现了DiffSec的基本逻辑,包括用户身份识别、安全等级与身份映射、建立特定路径、vNSF、控制器的北向接口以及用户安全等级转换等.在原型系统中,我们将用户安全等级定义为5类:普通(NORMAL)、观察(OBSERVED)、DDoS威胁(DDoS)、R2L威胁(R2L)和其他威胁(OTHERS).我们为每个授权用户分配一个私钥,作为Host ID;在控制器中存储用户安全服务映射表,表中的键值对表示形式为Host IDLevelServiceLevel表示该用户现在的安全等级,Service表示该用户能够使用的网络服务资源,如访问Web、电子邮件、音视频和数据库等.表1展示了一些用户安全服务映射表的示例.

Table 1 User Security Service Mapping Table
表1 用户安全服务映射表

Host IDLevelServiceωPrivateKey1NORMALWEB∕FTP1PrivateKey2NORMALWEB∕EMAIL1PrivateKey3DDoSEMAIL3PrivateKey4OBSERVEDDATABASE1

Note: ω is the threshold number of times a user made security

errors in the user security level conversion algorithm.

3) 用户行为审计记录

由于采用SDN技术,当每条流的首报文到达ONOS控制器时,控制器可以摘要提取报文首部信息,并存储在MySQL或Hbase云计算数据库中.这些海量的流信息可以用于用户行为安全审计,也能够使用人工智能技术确定新型网络安全和网络应用的模式.

4) 安全服务链通信

SSCi中的vSNF检测到网络攻击并进行处理,由vSNF将有关处理信息发送给控制器ONOS,由SDN应用程序进行分析处理.为实现此功能,系统需要扩充SDN的北向接口.ONOS供外部访问的接口有3种,即CLI,GUI和RESTful API.本系统基于RESTful API以HTTP请求的方式访问接口,以实现对用户的安全等级控制、流量分析和系统报警等功能.

4 原型系统实验及其分析

我们在图7所示的SANet原型系统中进行实验,着重测试了与基于DiffSec模型的系统功能是否正确,以及SANet的性能是否合理,并对相关实验数据进行了分析.

4.1 功能测试与分析

首先,我们要测试DiffSec控制方法是否达到了预定的效果.为使实验更为高效,我们编制了一些测试用例,以测试用户流是否根据预设逻辑运行,形成DiffSec的效果.其中包括主机通过SANet的路径是否正确、特定的网络安全功能是否起作用、合法流是否能够访问互联网服务等.

1) 根据用户类别选择SSCi的功能.在原型系统中,我们设置了3个用户user1,user2user3,其安全等级分别预设为普通类、观察类和可疑类.为此,我们首先在控制器的用户安全服务映射表中设置相关信息,并使用他们终端系统上的浏览器经过SANet访问互联网上的某个Web服务器S1.当ONOS控制器中运行DiffSec控制方法后,我们观察这些用户流量经过SANet时的路径是否正确.观察方法是通过分析SDN控制器下发的流表,以及对SSCi中的虚拟安全中间盒使用Wireshark捕获分组进行分析.

实验结果是:DiffSec控制方法根据用户类别选路的功能是正确的,并且用户浏览器能够访问到Web服务器S1.

2) 用户安全等级的动态调整功能.实验的具体方案与过程如下:

对于属于观察类的user2端系统,使用Iperf程序以100 Mbps的速率发送分组,当N1分别设置为106,107,108,再次检查其安全等级,发现分别经过约8,80,800 s后,该用户可以转变为普通类.

对于属于普通类的user1端系统,首先让user1user2端系统使用Nmap软件发送测试报文,以模拟攻击行为.该攻击行为包括2个特征:①在短时间内高速发送大量报文;②访问TCP的5050和6060端口.其次,在SMB1的一个vNSF中设置Snort程序(一个常见的IDS软件),设置2条检测规则:检测DDoS攻击和禁止访问TCP的5050,6060端口的规则.经上述实验后,user1由普通类转为观察类.

实验结果表明:SANet原型系统能够正确地进行用户安全等级的动态调整功能.

3) 安全等级与网络性能的关系.为了激励用户养成遵守网络安全规则的习惯,我们在SANet设计中,将SSC1路径的SMB1带宽设置为1 Gbps,时延设置为1 ms;而SSC2路径的SMB2带宽设置为10 Mbps,时延设置为100 ms.先将user1端系统设为普通类,让其正常发送流量10 s,然后转而发送端口扫描的流量40 s.图8为我们使用Iperf测试得到的user1发送流量的带宽和时延变化情况.网络性能的这种变化反映出user1安全等级从普通类调整为观察类.对user1的安全等级的检查也证实了这一点.

Fig. 8 user1 bandwidth and delay variation
图8 user1的带宽和时延变化

实验结果表明:SANet设计使得较高的安全等级的用户具有较好的网络性能.

4.2 性能测试与分析

Fig. 9 Relationship between number of users and running time of DiffSec method
图9 DiffSec方法用户数量和运行时间的关系

SANet原型系统采用NFV技术实现,这里需要关心此时该系统的性能是否能够支撑实际使用.

1) 流表下发时间.在不同用户数量时,SDN控制器在所有用户同时发出网络请求时,完成DiffSec控制方法的计算过程,并向vOFS发送命令,直到vOFS创建好流表项,这个过程需要的时间称为流表下发时间.实验中,在同一个端系统上启动不同数量的线程发送请求,以模拟多用户同时使用SANet的情况,统计在边界vOFS上所有流表下发的平均时间.实验结果如图9所示.

实验结果表明:流表下发时间随用户量增加而呈大致线性增长,并且具有较高的性能.

Fig. 10 Host server CPU, memory usage and matching rules
图10 宿主服务器CPU、内存占用率与匹配规则的关系

2) 宿主服务器的CPU、内存使用情况.SANet和其他NFV网络都运行在宿主服务器上,测量它们及其不同的安全中间盒对该服务器CPU和内存的影响非常重要.当我们分别运行防火墙(使用Iptables)、IDS(使用Snort)和DPI(使用Suricata)时,统计分析了资源使用情况.此时在Iptables,Snort上添加了数量相同的检测规则,即检测所有经过某个特定目的端口的TCP报文,处理方式则分别为丢弃和在日志文件中记录特定消息.而在Suricata中则添加了一个与应用层报文匹配的规则,以模拟DPI功能,处理方式是在日志文件中记录特定信息.我们在配置文件中分别添加了1 000和2 000条相同形式的规则,并且3个虚拟端系统每个都以10个线程进行网络请求.图10展示了同时使用3种安全功能对宿主服务器CPU和内存占用的影响,在设置2 000条规则时,此时CPU最大值没有超过6%,而内存占用率没有超过7%.

实验结果表明:普通的宿主服务器能够支持相当规模的SANet的传输与安全功能,并具有较好的网络性能.

Fig. 11 90 users’ average bandwidth, delay and packet loss
图11 90名用户的平均带宽、时延和丢包性能

3) 大规模用户场景下的性能情况.采用上述测试安全等级与网络性能的实验场景,我们将接入网中的用户数增加至90个.原型系统SANet中包括3条SSC路径,其中SSC1SSC2路径SMB带宽和时延设置与上述实验完全相同,而SSC3路径作为可信的普通用户的通信链路,对它设置较小的时延参数,链路带宽设置为10 Gbps.让这90名用户分别归属于3种安全类别,即普通类、观察类和可疑类.通过用户鉴别和路径控制,SANet使这3类用户分别经过上述3条SSC路径,以测试SANet在此场合下能否满足性能需求.图11为我们在10 min内使用Iperf发送UDP流量,测试得到各种安全类别的用户经过SANet所经历的平均带宽、平均时延和平均丢包的性能情况.

由图11(a)可见,当用户数量较多时,SANet原型系统对于普通用户的用户平均带宽能够到达120 Mbps以上,对于观察类用户平均带宽也能够限制在高于12 Mbps,对于可疑类用户平均带宽则被限制为较小.由图11(b)可见,当用户数量较多时,SANet对于普通用户的平均时延为0.01 ms左右,对于观察类用户的平均时延也能够控制在1 ms以上,对于可疑类用户的平均时延则达到100 ms以上.由图11(c)可知,当用户数量较多时,SANet在SDN未建立流路径时,丢包率为100%,因此在运行前30 s中平均丢包率达到30%左右;而随着流路径的建立,所有用户的平均丢包率迅速下降,直至稳定在0.5%附近.这表明当用户数量较多时,SANet原型系统有与用户数量少时类似的性能,采用NFV与SDN结合技术实现具有DiffSec架构系统的实用性.

综上所述,实验结果表明:基于DiffSec模型的SANet原型网络系统不仅功能正确,而且性能能够满足很多场合的实用需求.

5 总 结

随着互联网的发展,采用“打补丁”方式发展IP网络安全架构难以为继.为此,本文提出的区分安全模型DiffSec,为发展具有降低网络安全的开销和提升网络性能潜力的新型网络安全架构做了有益的尝试.特别是在网络边缘采用基于DiffSec的接入网,不仅能够兼容当前的互联网技术与应用,而且能够便于扩充新型网络安全机制.本文基于SDN技术设计了安全接入网络SANet的结构和智能控制,并结合了NFV技术实现了原型系统.原型系统的测试表明了基于DiffSec的SANet不仅技术上可行,而且已经具备了实用价值.下一步,我们将研究基于DiffSec的网络安全实用化技术;在实用场景中建立测试和研究环境,采用人工智能技术分析实际数据以进一步优化设计SANet,使它适用面更广、成本更低、效率更高.

参考文献

[1]Justine S, Shaddi H, Colin S, et al. Making middleboxes Someone Else’s problem: Network processing as a cloud service[C] //Proc of ACM SIGCOMM’12. Now York: ACM, 2012

[2]Xie Gaogang, Zhang Yujun, Li Zhenyu, et al. A Review of Future Internet Architecture Research[J]. Chinese Journal of Computers, 2012, 35(6): 1109-1119 (in Chinese)(谢高岗, 张玉军, 李振宇, 等. 未来互联网体系结构研究综述[J]. 计算机学报, 2012, 35(6): 1109-1119)

[3]Pan J, Paul S, Jain R. A survey of the research on future Internet architectures[J]. IEEE Communications Magazine, 2011, 49(7): 26-36

[4]Alohali M, Clarke N, Furnell S, et al. Information security behavior: Recognizing the influencers[C] //Proc of Computing IEEE Conf. Piscataway, NJ: IEEE, 2017: 844-853

[5]Liqin T, Chuang L. A kind of prediction method of user behaviour for future trustworthy network[C] //Proc of ICCT’06. Piscataway, NJ: IEEE, 2006: 1-4

[6]He Xixi. Research on key technologies of network security behavior analysis based on granular computing theory[D]. Chengdu: University of Electronic Science and Technology of China, 2017 (in Chinese)(赫熙煦. 基于粒计算理论的网络安全行为分析关键技术研究[D]. 成都: 电子科技大学, 2017)

[7]Jiang Zhuojian. Research and implementation of traffic-based network user association analysis method[D]. Beijing: University of Posts and Telecommunications, 2018 (in Chinese)(蒋卓键. 基于流量的网络用户关联分析方法研究与实现[D]. 北京: 北京邮电大学, 2018)

[8]Li Chuanhui. User behavior monitoring in high-trust network[D]. Beijing: Beijing University of Posts and Telecommuni-cations, 2011 (in Chinese)(李传辉. 高可信网络中的用户行为监测[D]. 北京: 北京邮电大学, 2011)

[9]Zhou Weilin, Yang Yuan, Xu Mingwei. Network function virtualization technology research[J]. Journal of Computer Research and Development, 2018, 55(4): 675-688 (in Chinese)(周伟林, 杨芫, 徐明伟. 网络功能虚拟化技术研究综述[J]. 计算机研究与发展, 2018, 55(4): 675-688)

[10]Shin S, Wang Haopei, Gu Guofei. A first step toward network security virtualization: From concept to prototype[J]. IEEE Transactions on Information Forensics and Security, 2015, 10(10): 2236-2249

[11]Wu Haotian, Li Xin, Scoglio C, et al. Middlebox resources management using OpenFlow[C] //Proc of 2016 IEEE Conf on Computer Communications Workshops. Piscataway, NJ: IEEE, 2016: 976-977

[12]Lee W, Choi Y H, Kim N. Study on virtual service chain for secure software-defined networking[J]. Advanced Science and Technology Letters, 2013, 29(13): 177-180

[13]Qazi Z A, Tu C C, Chiang L, et al. SIMPLE-fying middlebox policy enforcement using SDN[J]. ACM SIGCOMM Computer Communication Review, 2013, 43(4): 27-38

[14]Xu Ran, Wang Wendong, Gong Xiangyang, et al. Delay-aware resource scheduling optimization in network function virtualization[J]. Journal of Computer Research and Development, 2018, 55(4): 738-747 (in Chinese)(徐冉, 王文东, 龚向阳, 等. 网络功能虚拟化中延时感知的资源调度优化方法[J]. 计算机研究与发展, 2018, 55(4): 738-747)

[15]Wang Yuwei, Liu Min, Ma Cheng, et al. High performance load balancing mechanism for network function virtualization[J]. Journal of Computer Research and Development, 2018, 55(4): 689-703 (in Chinese)(王煜炜, 刘敏, 马诚, 等. 面向网络功能虚拟化的高性能负载均衡机制[J]. 计算机研究与发展, 2018, 55(4): 689-703)

[16]Hettich S, Bay D. KDD Cup 1999 Data[DBOL]. [2018-12-20]. http://kdd.ics.uci.edudatabaseskddcup99kddcup99.html

[17]Özgür A, Erdem H. A review of KDD99 dataset usage in intrusion detection and machine learning between 2010 and 2015[OL]. [2016-04-14]. https://peerj.compreprints1954.pdf

[18]Wang Xiulei, Chen Ming, Hu Chao, et al. SDICN: A software defined deployable framework of information centric networking[J]. China Communications, 2016, 13(3): 53-65

DiffSec: A Differentiated Intelligent Network Security Service Model

Deng Li, Wu Weinan, Zhu Zhengyi, and Chen Ming

(College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing 211106)

Abstract Network security for our modern information society is more and more important, and what followed by the cost of network security is increasing. It is a challenging task to reduce the cost of network security as much as possible on the premise of ensuring network security. Based on the fact that different user communities have different security requirements, this paper proposes a model called DiffSec that provides differentiated security services according to different user security levels. We argue that this model can effectively reduce the network security service cost and improve the network performance and can meet the needs of long-term development of the network security technology. Based on the DiffSec, we design the structure of the secure access network (SANet) and the corresponding intelligent control method using the combination of NFV and SDN, and implement the prototype system. The experimental results of the prototype system show that SANet can not only provide flexible and correct network security functions, but also has good network performance and practical value.

Key words network security; software-defined networking (SDN); network function virtualization (NFV); intelligent control; prototype system

(dengli@nuaa.edu.cn)

DOI:10.7544/issn1000-1239.2019.20190019

收稿日期2019-01-04;

修回日期:2019-03-15

基金项目国家自然科学基金项目(61772271,61379149)

This work was supported by the National Natural Science Foundation of China (61772271, 61379149).

通信作者陈鸣(mingchen@nuaa.edu.cn)

中图法分类号 TP391

Deng Li, born in 1996. Master candidate. His main research interests include software-defined networking, network function virtualization and network security.

Wu Weinan, born in 1995. Master candidate. His main research interests include software-defined networking, network function virtualization and network security.

Zhu Zhengyi, born in 1995. Master candidate. His main research interests include network security and machine learning.

Chen Ming, born in 1956. PhD, professor. Member of CCF. His main research interests include future network, network function virtualization, drone network and network security.