邢宇恒
(國家電網公司信息通信分公司, 北京 100761)
基于知識庫的系統安全評估方法
邢宇恒
(國家電網公司信息通信分公司, 北京 100761)
在系統非正常狀態和正常狀態這兩種運行狀況下,使用 nmon 等系統監測工具采集了代表系統運行狀態的指標數據,對獲取的指標數據進行了向量化操作,構造了可以反映系統運行狀態的多維行為特征。 采用類內、類間評價距離準則對指標數據進行了有效特征提取,構建了能夠反映系統運行狀態的行為特征知識庫。然后利用行為特征知識庫的數據構造了決策樹,以判斷系統所處狀態是否安全。
行為特征知識庫;類內、類間距離評價準則;決策樹
操作系統作為計算機系統資源的管理者,需要為軟硬件提供相應的服務和支持,因此需要確保操作系統在正常的狀態下運行。但是當系統資源消耗到一定程度的時候,就會導致系統運行效率下降甚至因為某項系統資源瓶頸而導致系統不可用。系統在發生某類安全問題之前,可能已經處于一種非正常的狀態了。而行為作為狀態變化的外在表現,從信息數據角度看,當對輸入的數據進行處理并將其轉化成輸出數據后,其狀態會發生一定的變化,故可以通過監測到的系統狀態指標數據對當前系統狀態進行反推。
本文主要使用 nmon 監測工具來獲取系統運 行狀態指標數據。在系統產生安全問題(宕機或者進入死鎖狀態等)之前,利用反映系統非正常和正常狀態的歷史數據對系統當前所處的狀態進行判斷,從而有效地判斷出系統狀態并及時通知系統管理員采取相應的解決措施。
本文采用決策樹策略對系統所處狀態是否正常進行判定,構建決策樹需要以下步驟。
(1)利用內存泄露堆積可能引發系統狀態不正常這一特點,設計相關測試用例模擬系統的非正常狀態。
(2)利用 nmon 監測工具獲取系統模擬情況下的非 正常狀態以及正常狀態的指標數據,采用第 2節的方法對獲取的指標數據進行向量化操作,構造可以反映系統運行狀態的多維行為特征;并對多維行為特征進行基于類內、類間距離評價準則的有效提取,進而選取若干指標數據以構建行為特征知識庫。
(3)利用行為特征知識庫中的信息作為訓練樣本集構建決策樹,從而判斷系統所處狀態是否正常及安全。
在 眾多操作系 統的監 測工具中,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|越小,則說明該指標將系統狀態分類正確的概率比較小,可靠性比較低,這種特征可被丟棄,不再加入行為特征知識庫。
根據第 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 系統狀態決策樹
以往只是利用系統監測工具獲取系統運行狀態指標數據,卻沒有利用這些數據對系統進行狀態分析和判斷。根據本文提出的思路進行評估系統狀態的實驗,結果表明本文的設計是切實可行的,具有研究價值。日常運維經驗顯示,信息系統在運行維護的前期,當用戶壓力還沒有很大時,系統的性能表現還不錯。當用戶數越來越多或者某一個時間段內大量用戶訪問某一系統時,系統響應時間會變得很長甚至系統不可用。利用本文提出的方法,結合系統的壓力測試,可以找出系統的資源瓶頸。在系統運行監控時,也能夠對系統狀態做出預判,從而避免系統出現故障。 目前在電力信息系統運行維護的過程中,雖然可以做到對所有的系統進行監控,但是在發生告警通知時,有一定的誤警發生,浪費了人力物力,利用本文提出的決策樹方法,在運維過程中收集系統運行狀態指標,構建行為特征知識庫,最終構建出決策樹并找出告警的根本原因(指標)如何找到發生告警通知的根本原因受到硬件和實驗條件的影響,沒能取得大規模的實驗數據。如果能把更多的系統狀態指標添加到決策樹中,會使該方法對系統狀態做出的判斷更加精確,判斷的準確率更高。
[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 系統運維工程師,主要 研究方向為信息系統性能監測及安全。