姚书科
(黄淮学院 国际学院,河南 驻马店 463000)
由于网络中设备类型多种多样,数据类型纷繁复杂,要实现对网络安全态势全面、准确的掌握,建立一个覆盖广泛、内容全面的网络安全态势要素指标体系是必不可少的。从纷繁复杂的数据中选取能够反映网络安全状态的指标数据,用于网络安全态势评估和态势预测。为了能够建立一个全面、系统的网络安全态势要素指标体系,笔者提出了一套全面、系统的网络安全态势要素指标体系,以及基于Netflow、Snort和Nessus的数据采集与提取方法和态势指标的计算方法。
指标体系的建立不能漫无目的地凭空想象,而需要根据网络的组织结构和实际需求,充分考虑各个指标之间的相互关系,从整体上对指标体系进行把握。在研究了网络安全指标体系领域研究成果[1-2]的基础上,结合网络的拓扑结构和网络安全的实际需要,本文总结归纳出以下4条指标体系的建立原则。
1)全面性与相对独立性原则 即要全面考虑对网络安全产生影响的要素;又要兼顾独立性,将安全状态用几个相对独立的性质表示出来,并用相应指标进行分别评估。处理好全面性与相对独立性,是建立网络安全态势评估指标体系重要的一步。
2)系统化与层次化原则 网络指标体系庞大,涉及的影响因素多,采用系统化、层次化的方法划分指标体系,符合了网络层次化结构的实际需求,也可以作为全面性与相对独立性的补充,使整个指标体系多而不乱,条理清楚。
3)相似相近原则 影响网络安全状态的因素相当多,其中一些是近似的、相互影响的,如数据包的分布、数据包大小的分布,这些指标应该被统一考虑。
4)科学性原则 指标的选择和设计应建立在网络事件和系统需求基础之上,具有较强的针对性和代表性。同时,指标的计算方法、数据收集、指标范围、权重选择等都必须有科学依据。
文中在研究了网络安全领域近期的研究成果[3-4]和网络安全风险评估相关标准[5-6]的基础上,从当前网络的实际情况出发,对网络普遍存在的、人们关注较多的安全信息进行了详细的论证,对其应用于网络的可行性进行了分析,构建了网络安全态势要素指标体系,如表1所示。
生存性、威胁性、脆弱性3个指标,分别代表了网络的3个独立性质,从不同视角对网络安全态势进行了描述。
生存性指标侧重描述网络自身对安全事件的防范能力、网络能够承受和抵抗攻击的能力,以及网络在遭受攻击的情况下继续为用户提供服务的能力。
威胁性指标侧重描述各种网络活动对于网络内部可能产生的威胁的程度以及危害的严重性,主要统计已知攻击、疑似攻击和恶意代码的数量或频率,通过模型计算,得出衡量网络环境的参数。威胁性指标不仅从外部来考量网络的安全状况,同时也将网络内部的恶意代码威胁纳入考量范围之内,使得对网络安全态势的评估更加准确、全面。
脆弱性指标侧重描述网络自身在安全方面的不足之处,主要关注网络在遭受攻击的情况下,是否能够承受得住,能够承受多少以及攻击会带来多大的危害和损失。通过综合分析设备数目和漏洞数目等信息,从整体上来衡量网络面临威胁的时候可能蒙受的损失程度。
表1 网络安全态势要素指标体系Tab.1 Network security situation factor index system
注:安全设备主要是指用于检测网络面临攻击威胁的设备,例如IDS、防火墙、病毒墙等。关键设备主要是指维持网络运行的设备和具有特殊作用的网络设备,例如路由器、DNS服务器、数字证书发布服务器等。
网络安全态势要素指标体系涵盖了构成信息网络实体的各个部分,将构成信息网络的各个层次纳入考虑范畴,能够从全面、整体的角度审视网络的安全状态,从而形成整个网络安全态势,提供全面、准确的信息支持。指标的选取具有以下的特点:
1)覆盖全面 一方面,指标将网络目前面临的主要攻击威胁都纳入指标体系的考量范围之内,能够较为全面地反映网络当前所遭受的威胁状况;另一方面,指标还将网络自身的运行状态和防护能力纳入考量的范围之内,将二者相结合,从攻防两个方面对网络安全态势进行了描述。
2)分层处理 由于指标数据涵盖了网络层、传输层和应用层,指标体系的结构也随着指标延伸范围的扩展而变得复杂,这就需要对各个一级指标进行规整和分层,对处于同一层次的指标进行集中处理。另外,对网络安全状态影响较大的指标,应进行单独处理。
3)动静结合 指标不仅包含实时动态变化的数据,也包含在一段时间内变化不大或变化速度缓慢的数据。动态指标数据来自于数据采集系统的实时收集,静态指标多为用户提供,因此,在提取态势指标时,需要区别对待,确保其数据的合理性和准确性。
网络设备数量多,各个设备间的关系复杂,从各个设备获得数据具有数据量大、成份复杂、产生时间短、处理时间长等特点[7],对采集的数据直接进行分析是不可取的,因此,需要对采集的数据进行一定的处理,才能转化为态势评估和态势预测使用的态势指标数据。数据处理共分为2个步骤:1)原始数据获取。对采集到的数据归类后放入到原始数据库中;2)态势指标提取。原始数据获取是态势指标获取的第1步,根据指标体系组织形式和系统的实际需求,本文将原始数据划分为网元信息、流量信息、报警信息、漏洞信息和静态配置信息5个类别。
1)网元信息 侧重描述网络中主机的信息,这里所指的主机包括安全设备、PC主机、服务器等,获取来源主要是通过Nessus扫描日志、Snort日志和Netflow数据,其主要包括主机类型、操作系统类型及版本、IP地址、开放端口类型、提供服务类型等信息。
2)流量信息 侧重描述与流量相关的信息,其获取来源主要是通过Netflow数据包,主要包括数据流入量、不同协议数据包的分布、不同端口数据包的分布、数据流IP的分布等信息。
3)漏洞信息 侧重描述漏洞的相关信息,其获取来源主要是通过扫描和系统日志,包括漏洞的类型、影响系统类型、危害等级等信息。
4)报警信息 侧重描述已经发生或检测出的恶意攻击行为的相关信息,其获取来源主要是通过Snort报警日志和用户上报等,主要包括安全设备检测到的攻击类型、安全设备所检测到攻击的IP分布、安全事件发生时间等信息。
5)静态配置信息 侧重描述整个网络的基本信息,其获取的主要来源是用户提供,主要包括网络拓扑、网络带宽和服务器的最大连接数,需要说明的是,由于这些数据具有相对稳定的特点,因而,静态配置信息不需要经常更新。态势指标提取是态势指标获取的中心环节,依据各指标的需要对原始数据进行筛选,选取适当的数据字段,通过一定的计算方法,从中提取指标信息获取态势指标。
网络安全态势感知系统要实现对网络安全态势的全面掌握,就需要尽可能全面地获取能够反映网络安全状态的数据信息。按照目前的网络现状和指标体系的实际需求,本文选取Netflow数据、Snort日志和Nessus扫描日志作为态势指标数据源。这三种数据涵盖了流量、攻击和漏洞三方面的信息,反映了网络基本运行状态信息、面临的攻击威胁和潜在的安全威胁状况,能够为网络安全态势感知系统提供较为全面的数据支持。
1)Netflow数据提取
Netflow技术作为网络流量的检测技术,能够实时地提供详尽网络流量信息和统计预分析功能,并能很好地避免资源过载,现已经成为被业界广泛认可的标准,有很强的代表性。Netflow报文都是由报文头和多个流信息记录两部分构成。报文头主要由版本号、流记录数、序列号等组成;流信息记录中存放有详细的流信息,主要有源IP地址、目的IP地址、TCP/UDP端口号、服务类型、包和字节计数、路由信息等。Netflow的数据格式[8]如表2所示。
2)Snort数据提取
Snort是一个开放源码的、免费的网络入侵检测系统,Snort报警信息可以根据用户的要求选取字段输出。在采集数据前,需要对Snort数据字段进行筛选,摒除无用的字段。根据指标体系的实际需要,从Snort数据中选取了14个字段,如表3所示。通过这14个字段提供的安全信息,能够较为清晰地了解一次攻击的主要信息,例如,攻击发起者是谁,基于什么样的服务和协议,实施了什么类型的攻击,被攻击目标是谁等。
表2 获取Netflow数据字段Tab.2 Acquisition of Netflow data field
3)Nessus数据提取
Nessus是一个功能强大而又易于使用的开源网络漏洞扫描器,在Nessus系统中,用户可以实现对网段、主机、端口和服务的扫描,发现网内存在的漏洞信息,将扫描结果以报告的形式呈现给用户的。根据指标体系的实际需要,从Nessus数据中选取了12个字段作为指标数据源,涵盖了端口、服务等目标主机的相关信息和存在的漏洞威胁信息,实现对目标主机的相关信息较为全面的掌握。如表4所示。
原始数据获取仅仅完成了态势指标数据获取的第一步。由于原始数据数量巨大,类型多样,需要进行分析处理,才能得到态势指标数据。本文态势指标数据处理主要有流量变化率计算、数量计算和分布计算3种。
流量变化率的计算:设t时刻网络数据的字节总量IQt为:
表3 获取Snort数据字段Tab.3 Acquisition of Snort data field
表4 获取Nessus数据字段Tab.4 Acquisition of Nessus data field
其中,flow_seq为Netflow数据流中的流编号,dOctets为第flow_seq条信息流的数据包中第3层字节的总个数。网络流量变化率IQR为:
数量的计算:主要是用于统计指标中的各个属性在一段时间内的出现次数。以数据包端口的数量为例,给出数量的计算方法:设D为N组检测到的攻击数据集合,Dc为数据D中攻击类型字段,K={K1,K2,…,Km}为攻击类型的集合,则攻击 Ki的数量 PKi为:
分布的计算:以不同协议数据包的分布为例,其分布表示各协议数据包占总数的百分比。设 P={P1,P2,…,Pn},Pi为使用第Pi种协议的数据包的数量,则第i种协议的分布xi为:
采用这3种计算方法,针对各指标的不同要求,可以从原始数据中提炼出态势指标数据。
网络安全态势感知系统数据来源广泛,种类繁多,因此,如何从纷繁众多的安全信息中提取能够全面反映网络安全态势的指标信息,成为研究网络安全态势感知的首要问题。本文提出了一套为态势评估和态势预测提供全面可靠支持的网络安全态势要素指标体系,并对态势数据获取和指标计算的方法进行了讨论。该指标体系不仅涵盖了构成信息网络实体的各个部分,也将构成信息网络的各个层次纳入考虑范畴,能够从全面、整体的角度审视网络的安全状态,从而形成整个网络安全态势,提供全面、准确的信息支持。
[1]王慧强,赖积宝,朱亮,等.网络安全态势感知系统研究综述[J].计算机科学,2006,10(33):5-10.WANG Hui-Qiang,LAI Ji-Bao,ZHU Liang,et al.Survey of network situation awareness system[J].Computer Science,2006,10(33):5-10.
[2]陈彦德,赵陆文,王琼,等.网络安全态势感知系统结构研究[J].计算机工程与应用,2008,44(1):100-102.CHEN Yan-de,ZHAO Lu-wen,WANG Qiong,et al.Summary of network restoration based on topological information[J].Computer Engineering and Applications,2008,44(1):100-102.
[3]王健,王慧强,赵国生.信息系统可生存性定量评估的指标体系[J].计算机工程,2009,3(35):54-56.WANG Jian,WANG Hui-qiang,ZHAO Guo-sheng.Index system of quantitative evaluation for information systems survivability[J].Computer Engineering,2009,3(35):54-56.
[4]王娟,张凤荔,傅翀,等.网络态势感知中的指标体系研究[J].计算机应用,2007,8(27):1907-1912.WANG Juan,ZHANG Feng-li,FU Chong,et al.Study on index system in network situation awareness[J].Journal of Computer Applications,2007,8(27):1907-1912.
[5]The International Organization for Standardization.Code of Practice for Information Security Management,ISO/IEC17799:2000[S].2000.
[6]B SI/DISC Committee BDD/2.BS7799 Code of Practice for Information Security Management[S].1999.
[7]郑丽君.基于日志的安全态势传感器设计与实现研究[D].哈尔滨:哈尔滨工程大学,2007.
[8]唐菲.网络安全态势感知可视化的研究与实现 [D].成都:电子科技大学,2009.