APP下载

基于知识库的系统安全评估方法

2016-06-13邢宇恒

电信科学 2016年4期
关键词:类间知识库决策树

邢宇恒

(国家电网公司信息通信分公司, 北京 100761)

基于知识库的系统安全评估方法

邢宇恒

(国家电网公司信息通信分公司, 北京 100761)

在系统非正常状态和正常状态这两种运行状况下,使用 nmon 等系统监测工具采集了代表系统运行状态的指标数据,对获取的指标数据进行了向量化操作,构造了可以反映系统运行状态的多维行为特征。 采用类内、类间评价距离准则对指标数据进行了有效特征提取,构建了能够反映系统运行状态的行为特征知识库。然后利用行为特征知识库的数据构造了决策树,以判断系统所处状态是否安全。

行为特征知识库;类内、类间距离评价准则;决策树

1 引言

操作系统作为计算机系统资源的管理者,需要为软硬件提供相应的服务和支持,因此需要确保操作系统在正常的状态下运行。但是当系统资源消耗到一定程度的时候,就会导致系统运行效率下降甚至因为某项系统资源瓶颈而导致系统不可用。系统在发生某类安全问题之前,可能已经处于一种非正常的状态了。而行为作为状态变化的外在表现,从信息数据角度看,当对输入的数据进行处理并将其转化成输出数据后,其状态会发生一定的变化,故可以通过监测到的系统状态指标数据对当前系统状态进行反推。

本文主要使用 nmon 监测工具来获取系统运 行状态指标数据。在系统产生安全问题(宕机或者进入死锁状态等)之前,利用反映系统非正常和正常状态的历史数据对系统当前所处的状态进行判断,从而有效地判断出系统状态并及时通知系统管理员采取相应的解决措施。

本文采用决策树策略对系统所处状态是否正常进行判定,构建决策树需要以下步骤。

(1)利用内存泄露堆积可能引发系统状态不正常这一特点,设计相关测试用例模拟系统的非正常状态。

(2)利用 nmon 监测工具获取系统模拟情况下的非 正常状态以及正常状态的指标数据,采用第 2节的方法对获取的指标数据进行向量化操作,构造可以反映系统运行状态的多维行为特征;并对多维行为特征进行基于类内、类间距离评价准则的有效提取,进而选取若干指标数据以构建行为特征知识库。

(3)利用行为特征知识库中的信息作为训练样本集构建决策树,从而判断系统所处状态是否正常及安全。

2 基于类内、类间距离评价准则构建行为特征知识库

在 众多操作系 统的监 测工具中,nmon 是被广 泛使 用的监测工具。相对于其他工具来说,nmon 工具所记录的信息是比较全面的。nmon 工具监控的项目主要有:CPU 占用率 、内 存 使 用 情 况 、磁 盘 I/O 速 度 、传 输 和 读 写 比 率 、文 件系统的使用率、网络 I/O 速度、传输和读写比率、错误统计率与传输分组的大小、消耗资源最多的进程、计算机详细信 息 和 资 源 、页 面 空 间 和 页 面 I/O 速 度 、用 户 自 定 义 的 磁盘组和网络文件系统等。虽然通过工具监测可获取到代表系统运行状况的指标数据,但通过 nmon 工具获取的指标数据有多个,这些指标中包含大量对系统状态分析价值不高的元素,为了排除无关信息的干扰,避免数据冗余,需要对其特征值进行有效提取后再进行知识库的构建。

2.1 行为特征知识库的构建流程

行为特征知识库构建流程如图 1所示,具体介绍如下。

(1)采集代表系统非正常状态以及正常状态下的指标数据。

(2)对获取的指标数据进行向量化操作,构造可以反映系统运行状态的多维行为特征。

(3)运用类内、类间距离评价准则进行有效行为特征提取。

2.2 有效特征提取

图1 行为特征知识库构建流程

2.2.1 类内距离

假设数据集合{x1,…,xm}在某种相似性测度基础之上被划 分 为 K 类 {xi(j)},j=1,… ,K 为 类 别 标 号 ,i=1,… ,nj表 示 类 内数据的序号则类内距离定义为:

其 中 ,mj表 示 j类特征均值越 小 ,说明特征越显著。

2.2.2 类间距离

同理,类间距离定义为:

其 中 ,mj表 示 j类 特征 均 值 ,m 为 总 特 征 均 值 。DB越大,说明特征越显著。

2.2.3 类内类间距离准则

由上文的描述可知:若在类内距离越小的同时类间距离越大,则在区分特征方面效果越明显。定义可以同时反映类内和类间距离的准则函数为:

类间 距 离 DB越 大,类 内 距 离 DW越 小 ,即 类 内 类 间 距离 D 越大,特征就越显著。针对本文所涉及的系统非正常与正常两类问题,设系统正常状态和非正常状态下某个指标 T 的分布函数如图 2所示,并记系统正常状态下该特 征的 均 值 为 m0、方 差 为 σ0,系 统 非 正 常 状 态 下 该 特 征 的 均 值为 m1、方差为 σ1。

图2 特征T的分布函数

此时,类内类间距离准则为:

由 此 可 知 ,∆m=|m0-m1|越 大 ,对 于 两 类 的 区 分 性 就 越大,即行为特征显著性就越好。这说明指标 T对于区分系统正常状态和非正常状态的能力很强,应该将此指标作为有效特征加入行为特征知识库中。相反,若 ∆m=|m0-m1|越小,则说明该指标将系统状态分类正确的概率比较小,可靠性比较低,这种特征可被丢弃,不再加入行为特征知识库。

3 决策树的构建

根据第 2节系统监测取得的有效系统指标参数,例如CPU 利 用 率 、内 存 利 用 率 、磁 盘 I/O 速 率 、中 断 数 、文 件 系统利用率,通过设计不同的测试用例来模拟系统资源不同的消耗状态,根据系统对一类固定操作的响应时间长短来判断系统是否处于正常状态。对监测得到的数据进行归类,例如将 CPU 的占用率分为高、中、低 3 个值。将有效系统指标归类后得到的系统状态参数见表 1。

在得到有效的特征知识库后,就可以利用这些指标数据构建决策树。目前决策树技术已经在许多数据挖掘系统中得到了应用,国内外很多公司均推出了自己的数据挖掘系 统 ,例 如 Microsoft、SGI、SAS、IBM、SAP 等 在 已 推 出 的 数据挖掘系统中首选的就是决策树方法。

而 当 前 最 具 有 影 响 力 的 决 策 树 算 法 是 Quinlan 于1993 年 提 出 的 C4.5 算 法 。C4.5 选 择 信 息 增 益 值 率 最 大 的属性作为分裂属性,将训练实例集分裂成若干子集,在各子集上持续地递归上述过程,直到叶子节点为纯的实例集或者再无其他可供选择的分裂属性,然后使用剪枝技术修剪之前产生的树。

表1 系统状态参数

定 义 1 (信息熵)设有一个离散随机变量 X,它有 n 个可 能 取 值 ,分 别 为 a1,a2,… ,an,各 种 取 值 出 现 的 概 率 分 别 为p1=P(a1),p2=P(a2),… ,pn=P(an),则 :

称为随机变量 X 的信息(离散)熵。

定义 2 (信息增益)一个属性的信息增益是指由于使用这个属性分割实例集而导致的期望熵的降低。其定义式为:

其 中 ,S 为 实 例 集 合 ,A 为 某 一 属 性 ,υ为 属 性 的 某 一个取值。

定义 3 (分裂信息)假设训练实例集 S的某属性 A的取 值 个数为 k,Sj为属 性 A 的 第 j个 可 能 取 值 对 应 的 实例子集,则 S关于属性 A 的分裂信息量定义为:

定义 4 (信 息增益率 )信 息 增 益率 = 信 息增益/分裂信息量。

图3 为一个计算属性 CPU 的信息增益率的例子。属性CPU 有 3 个取值,分别为高(high)、中(middle)、低(low)。当前实例集合 S 中共有 14 个实例,其 中 9 个实例 的类值为正常,5个实例的类值为不正常。因此实例集合的信息熵为:

图3 CPU 信息属性分裂

属性 CPU 为高的实 例 有 5 个,其中 2 个 类值为正 常 ,3个类值为不正常。信息熵为:

属性 CPU 为中的实例有 4个,且全部为正常。信息熵为:

属 性 CPU 为低 的 实 例有 5 个 ,其 中 3 个类值 为 正 常,2个类值为不正常。信息熵为:

故属性 CPU 的信息增益为:

选择 CPU 为分裂属性时,CPU 属性将实例集分裂成 3 个子集,各 子集中 实例 的个数 分别为 5、4 和 5,因此 分裂 信息量为:

因此,选择 CPU 为分裂属性时,其信息增益率为:

重 复 以 上 步 骤 ,可 以 得 到 内 存 利 用 率 、磁 盘 I/O 速 率 、中断数等信息增益率。

使 用 R 环 境 下 Rweka 分 组 提 供 的 J48 函 数 对 本 文 第2节取得的有效系统状态指标来构建决策树,得到的系统状态决策树如图4所示。

图4 系统状态决策树

4 结束语

以往只是利用系统监测工具获取系统运行状态指标数据,却没有利用这些数据对系统进行状态分析和判断。根据本文提出的思路进行评估系统状态的实验,结果表明本文的设计是切实可行的,具有研究价值。日常运维经验显示,信息系统在运行维护的前期,当用户压力还没有很大时,系统的性能表现还不错。当用户数越来越多或者某一个时间段内大量用户访问某一系统时,系统响应时间会变得很长甚至系统不可用。利用本文提出的方法,结合系统的压力测试,可以找出系统的资源瓶颈。在系统运行监控时,也能够对系统状态做出预判,从而避免系统出现故障。 目前在电力信息系统运行维护的过程中,虽然可以做到对所有的系统进行监控,但是在发生告警通知时,有一定的误警发生,浪费了人力物力,利用本文提出的决策树方法,在运维过程中收集系统运行状态指标,构建行为特征知识库,最终构建出决策树并找出告警的根本原因(指标)如何找到发生告警通知的根本原因受到硬件和实验条件的影响,没能取得大规模的实验数据。如果能把更多的系统状态指标添加到决策树中,会使该方法对系统状态做出的判断更加精确,判断的准确率更高。

[1] 王利.浅谈 Linux 系统安全及应用[J].科技信息,2010(10):240-241. WANG L.Safety and application of Linux system[J].Science& Technology Information,2010(10):240-241.

[2] 杨 善 红.Linux 应 用 程 序 内 存 错 误 自 动 化 测 试 研 究 [J]. 民 营 科技,2011(10):53. YANG S H.Research on Linux applications automatic memory error testing[J].Private technology,2011(10):53.

[3] 唐 川 .UNIX 系 统 性 能 监 控 简 述 及 shell 系 统 资 源 统 计 程 序[J]. 科 学 咨 询 ,2009(7):39-40. TANG C.The UNIX system performance monitoring and shell system resource statistics program[J].Scientific Consult,2009(7 ):39-40.

[4] 刘 海 燕.Linux 系 统 的 安 全 检 测 与 增 强 技 术 分 析[J]. 计 算 机 工程与设计,2005,26(1):100-102. LIU H Y.Linux system safety inspection and reinforcing technology analysis[J].Computer Engineering and Design,2005,26(1):100-102.

[5] 周 超.Linux 下 C 语 言 程 序 内 存 泄 漏 的 研 究 [J]. 工 矿 自 动 化 ,2008(4):137-139. ZHOU C.Study on C language memory leak under Linux [J]. Industry and Mine Automation,2008(4):137-139.

[6] HSU C W,LIN C J.A comparison of methods for multiclass support vector machines[J].IEEE Transactions on Neural Networks,2002,13(2):415-425.

[7] The R project for statistical computing [EB/OL]. [2015-01-22]. http:/www.r-project.org/.

[8] 孙 文 华.基 于 B/S 架 构 的 nmon 远 程 监 控 平 台 [J]. 信 息 系 统 工程,2012(6):16-17. SUN W H.Based on B/S architecture nmon remote monitoring platform[J].Information System Engineering,2012(6):16-17.

[9] 薛 利 民.基 于 Linux 的 电 网 状 态 监 测 系 统 软 件 [J].电 力 自 动 化设备,2004,24(7):126-127. XUE L M.The software of power grid monitoring system based on the Linux [J].Electric Power Automation Equipment,2004,24(7):126-127.

[10]BENNETT A A.A behavior-based approach toadaptive feature detection and following with autonomous underwater vehicles[J].IEEE Journal of Oceanic Engineering,2001,25 (2):218-220.

System security assessment based on knowledge base

XING Yuheng
State Grid Information&Telecommunication Branch,Beijing 100761,China

Under the two kinds of system operation conditions,abnormal state and normal state,indicated data on behalf of the system running status was collected by system monitoring tools such as nmon,and the obtained index data was quantitatively operated.The features of multidimensional behavior was constructed which could reflect the running state of the system.The index data has been carried on by effective feature extraction by means of the between-class and within-class distance measurement criterion,and knowledge base of behavior features was constructed which reflects the system running state.The decision tree was constructed to judge whether the system of state was secure through data features of behavior knowledge base.

knowledge base of behavior feature,between-class and within-class distance measurement criterion,decision tree

TP399

:A

10.11959/j.issn.1000-0801.2016115

2016-01-07;

2016-03-16

邢宇恒(1988-),男,国家电网公司信息通信分公司 ERP 系统运维工程师,主要 研究方向为信息系统性能监测及安全。

猜你喜欢

类间知识库决策树
基于OTSU改进的布匹检测算法研究
基于贝叶斯估计的多类间方差目标提取*
一种针对不均衡数据集的SVM决策树算法
基于类间区分度的属性约简方法*
基于TRIZ与知识库的创新模型构建及在注塑机设计中的应用
决策树和随机森林方法在管理决策中的应用
基于改进最大类间方差法的手势分割方法研究
基于决策树的出租车乘客出行目的识别
高速公路信息系统维护知识库的建立和应用
基于Drupal发布学者知识库关联数据的研究