劉建華 魏銘冠 劉意先
(1.西安郵電大學(xué)信息中心 西安 710121)(2.西安郵電大學(xué)計(jì)算機(jī)學(xué)院 西安 710121)(3.西安郵電大學(xué)通信與信息工程學(xué)院 西安 710121)
互聯(lián)網(wǎng)給人類帶來了極大的便利,但隨之而來的各類網(wǎng)絡(luò)安全問題也日益凸顯[1]。對(duì)于網(wǎng)絡(luò)信息泄露、病毒入侵、黑客攻擊等網(wǎng)絡(luò)安全問題,網(wǎng)絡(luò)安全人員可以利用滲透測試工具隨時(shí)掌握網(wǎng)絡(luò)的實(shí)際情況[2]。網(wǎng)絡(luò)安全工具主要是通過檢測遠(yuǎn)程或本地主機(jī)安全性弱點(diǎn)的程序。網(wǎng)絡(luò)安全工具種類有很多,如:網(wǎng)絡(luò)掃描工具、通用漏洞檢測以及應(yīng)用漏洞檢測等[3]。Kali Linux 系統(tǒng)是一個(gè)專為滲網(wǎng)絡(luò)安全打造的系統(tǒng),在Kali Linux 系統(tǒng)中預(yù)安裝了嗅探/欺騙、漏洞分析等十三個(gè)工具集[4]。有些工具的功能較為相似,這會(huì)給網(wǎng)絡(luò)安全人員在選擇工具時(shí)帶來一定的麻煩。一個(gè)問題是,在不同情況下要更好地進(jìn)行安全維護(hù)和識(shí)別某些類型的網(wǎng)絡(luò)危險(xiǎn)時(shí),網(wǎng)絡(luò)安全人員必須花大量時(shí)間在其他來源中搜索信息,對(duì)比功能相近的工具并找到最合適的一款工具。另一個(gè)問題是,類似的工具可能會(huì)產(chǎn)生不同的結(jié)果,如:漏洞掃描不全面,數(shù)據(jù)分析出錯(cuò)等。因而在進(jìn)行網(wǎng)絡(luò)安全維護(hù)時(shí),網(wǎng)絡(luò)安全人員在選擇工具時(shí)會(huì)有一定的難度。對(duì)此,Artem Tetskyi 等[5]使用神經(jīng)網(wǎng)絡(luò)創(chuàng)建決策模型以解決在各個(gè)應(yīng)用領(lǐng)域中選擇工具的問題。該方案可行但對(duì)于模型要求相對(duì)較高。
本文擬提出AHP-TOPSIS[6]模型用于解決選擇工具困難的問題。該模型相對(duì)簡單且易于實(shí)現(xiàn),因此將會(huì)為使用者在選擇工具時(shí)提供一定的參考價(jià)值。
AHP-TOPSIS 方法中的混合模型已被先前的研究人員廣泛使用,其準(zhǔn)確性已被接受。例如,將AHP-TOPSIS用于衡量區(qū)域創(chuàng)新系統(tǒng)的績效評(píng)估[7];AHP-TOPSIS 曾用于評(píng)估船舶操作員的壓載水處理系統(tǒng)[8];利用AHP-TOPSIS 研究印度太陽能電池板開發(fā)的可行性[9];AHP-TOPSIS 也可以用于分析e-SCM 性能[10];AHP-TOPSIS 也可用于避免城市交叉口的交通擁堵問題[11];AHP-TOPSIS 甚至于可用于預(yù)測大學(xué)生未來就業(yè)問題[12]。
由于,滲透測試工具種類較多,因此本文的滲透模型主要以嗅探器的選擇為主。而嗅探器的功能各異,故本文主要將模型縮小到在一定的需求下,選擇適合該需求的工具。通過參考“https://sectools.org/tag/ sniffers/”網(wǎng)站,工具選擇的體系構(gòu)建應(yīng)兼顧該工具的功能、使用平臺(tái)、評(píng)分、聲望等多個(gè)因素。本文的評(píng)價(jià)指標(biāo)包含定性和定量兩種指標(biāo)。如表1所示。
利用層次分析法(Analytic Hierarchy Process,AHP)[13]建立評(píng)價(jià)方案,該方案主要由目標(biāo)層、準(zhǔn)則層和方案層組成。通過決策者的主觀性,利用兩兩比對(duì)法對(duì)準(zhǔn)則層以及方案層進(jìn)行賦值構(gòu)造成對(duì)矩陣,輸入的數(shù)據(jù)都是決策者的主觀判斷值。比較時(shí)用1~9 尺度對(duì)評(píng)價(jià)因子進(jìn)行重要性標(biāo)度[14],其中1表示影響相同,3表示影響稍強(qiáng),5表示影響強(qiáng),7表示影響明顯強(qiáng),9 表示影響絕對(duì)強(qiáng),2,4,6,8 則是介于兩個(gè)相鄰等級(jí)之間,且。構(gòu)成一個(gè)成對(duì)比較矩陣(即判斷矩陣)A=(aij)n×n,其中aij表示第i 個(gè)因素與第j 個(gè)因素相比較而得到的結(jié)果。最終得到的判斷矩陣為
表1 測試工具指標(biāo)評(píng)價(jià)體系
成對(duì)矩陣A 利用Matlab 將其規(guī)范化為矩陣Z",其元素為,且有
求出判斷矩陣每一行評(píng)價(jià)因子的幾何平均值,對(duì)所得向量進(jìn)行歸一化處理,得到各個(gè)評(píng)價(jià)因子的主觀權(quán)重值。計(jì)算公式為
為了檢查各矩陣的一致性和正確性,采用特征值原理計(jì)算一致性指數(shù)CI 。計(jì)算公式為
結(jié)合式(1)~(4)求得的準(zhǔn)則層和方案層各自的權(quán)重值,計(jì)算方案層中各個(gè)方案對(duì)目標(biāo)層的相對(duì)重要性的排序,即權(quán)重W=[w1,w2,…,wm]。
將方案層各方案相對(duì)于準(zhǔn)則層的單個(gè)準(zhǔn)則的影響程度構(gòu)造成對(duì)矩陣Z ,并將Z 根據(jù)總排序得到的權(quán)重W 進(jìn)行加權(quán)處理,得到加權(quán)標(biāo)準(zhǔn)化矩陣P。
利用TOPSIS法[15]求出加權(quán)標(biāo)準(zhǔn)化矩陣P 的正理想解和負(fù)理想解,具體計(jì)算公式如下所示:
正理想解:
負(fù)理想解:
再分別以di*和di0表示各方案的正、負(fù)理想解的歐式距離,具體計(jì)算如下所示:
計(jì)算各方案的貼近度指數(shù)Ci,按Ci由大到小排序方案的優(yōu)劣次序:
由式(10)的結(jié)果得到各方案貼近目標(biāo)的最終矩陣C ,再結(jié)合準(zhǔn)則層的權(quán)重ω,得到最終的綜合評(píng)價(jià)矩陣Q=ωC 。利用Matlab 求出最終貼近度T進(jìn)行優(yōu)劣排序,從而得出結(jié)果。
現(xiàn)有滲透需求為:“嗅探流過網(wǎng)卡的數(shù)據(jù)并進(jìn)行分析過濾,篩選出所需的網(wǎng)絡(luò)信息”。采用AHP-TOPSIS 模型法選擇合適的嗅探工具。按表1中的指標(biāo)體系將該需求分解為以下4 個(gè)評(píng)判屬性指標(biāo):功能、評(píng)分(Rating)、聲望(popularity)和使用平臺(tái)。所選工具應(yīng)該具備嗅探網(wǎng)卡和自動(dòng)分析收到的數(shù)據(jù)包并了解數(shù)據(jù)包詳細(xì)信息等功能。評(píng)分和聲望是“https://sectools.org/tag/ sniffers/”網(wǎng)站為所有工具提供的必有的、固定的屬性。本案例的需求可在Windows、Linux和Apple Mac OS X平臺(tái)上進(jìn)行實(shí)驗(yàn)。
本文所選取的數(shù)據(jù)均來源于“SecTools.org:排名前125 名的網(wǎng)絡(luò)安全工具”,數(shù)據(jù)具有真實(shí)可靠性。自2011 年,該網(wǎng)站提供評(píng)級(jí)、評(píng)論、排序和新工具建議表等功能。根據(jù)表1 中的指標(biāo)體系,現(xiàn)只選取其中4 個(gè)包嗅探器工具作為本文實(shí)驗(yàn)分析的數(shù)據(jù),這些數(shù)據(jù)的所有屬性都是基礎(chǔ)語言類型。在對(duì)于如何將基礎(chǔ)語言轉(zhuǎn)化為數(shù)據(jù)類型的問題中,周波等[16]提出了一種模糊項(xiàng)的新型定量方法:將安全評(píng)估中使用的屬性按“高”、“中”、“低”進(jìn)行排序后再進(jìn)行量化。本文則先采用人為方法對(duì)工具賦予主觀權(quán)重,再利用AHP 進(jìn)行比較,構(gòu)造成對(duì)矩陣。最后利用AHP-TOPSIS模型進(jìn)行綜合評(píng)價(jià)。
在利用AHP 構(gòu)建成對(duì)矩陣之前,首先將各個(gè)屬性進(jìn)行適當(dāng)?shù)馁x值,如,比較Wireshark 和Net?workMiner。Wireshark 是一個(gè)數(shù)據(jù)包嗅探器,功能是“可檢查來自實(shí)時(shí)網(wǎng)絡(luò)或磁盤上捕獲文件的數(shù)據(jù),也可以通過交互的方式瀏覽已捕獲到的數(shù)據(jù),最終可深入了解所需數(shù)據(jù)包的詳細(xì)信息”,按其對(duì)本文需求的影響賦其主觀權(quán)重9(十分制);使用者給予的評(píng)分是4 分,聲望為2,可在Linux、Apple Mac OS X、Windows 系統(tǒng)上使用,它還提供GUI 界面、源代碼可檢查功能。而NetworkMiner的功能是“可被用作是被動(dòng)網(wǎng)絡(luò)嗅探器(或數(shù)據(jù)包)的捕獲工具,以便用于檢測操作系統(tǒng),開放端口等”,按其對(duì)本文需求的影響賦其主觀權(quán)重7(十分制);使用者給予的評(píng)分是3 分,聲望是20,僅限于再Windows系統(tǒng)上使用,提供GUI 界面、源代碼可檢查等功能?,F(xiàn)將它們依次賦予數(shù)值,本文中的數(shù)據(jù)均是數(shù)據(jù)嗅探器,因此將這一項(xiàng)均賦值為“1”;將“無線工具”賦值為“2”;聲望值和評(píng)分均為各自的數(shù)值;各個(gè)操作系統(tǒng)均為“1”;可提供GUI 界面賦值為“2”;源代碼可檢查賦值為“3”。因此,Wireshark 的值為“23”,NetworkMiner 的值為“36”。同理將其余兩個(gè)工具都賦值。最終的結(jié)果如表2 所示,將各屬性(功能、聲望、評(píng)分以及使用平臺(tái))分別用X1~X4表示。
表2 數(shù)據(jù)量化
本文所選取的各個(gè)屬性皆是數(shù)據(jù)源中各個(gè)工具所擁有的信息。通過對(duì)本文案例的分析,選擇出對(duì)本文案例影響較大的屬性作為工具的屬性。為滿足每個(gè)不同的需求,AHP-TOPSIS 模型的屬性選擇不是固定唯一的,而是根據(jù)需求的不同,需要靈活選擇合適的屬性。
根據(jù)表2的數(shù)據(jù)結(jié)合圖1的層次結(jié)構(gòu)模型構(gòu)建判斷矩陣。其中A 為目標(biāo)層,B為準(zhǔn)則層,C為方案層。
圖1 層次結(jié)構(gòu)模型
根據(jù)圖1 可列出各方案對(duì)于各準(zhǔn)則的判斷矩陣,結(jié)合表2 中總排序結(jié)果中的總排權(quán)值構(gòu)造加權(quán)矩陣P。結(jié)果如表3所示。
表3 層次總排序結(jié)果
(功能)
(評(píng)分)
(聲望)
(使用平臺(tái))
利用TOPSIS 法算出P1~P4各矩陣的正、負(fù)理想解以及貼近度。方案層的四個(gè)方案Wireshark、Kismet、Dsniff 以 及NetworkMiner 分 別 用S1~S4表示。結(jié)果如表4所示。
表4 各矩陣的正、負(fù)理想解以及貼近度
在本文中,AHP-TOPSIS 方法被用作工具選擇過程的決策支持模型。該模型可用于減少?zèng)Q策中的人為弱點(diǎn),并獲得更準(zhǔn)確的結(jié)果。AHP具有很強(qiáng)的主觀性,在構(gòu)造成對(duì)矩陣時(shí),輸入的數(shù)據(jù)都是決策者的主觀判斷。但它具有簡潔性和實(shí)用性,在各個(gè)決策分析中占據(jù)極其重要的地位。經(jīng)實(shí)驗(yàn)證明:本文提出的AHP—TOPSIS 模型具有成本低、容易實(shí)現(xiàn)、靈活性較強(qiáng)、算法簡單、容易理解、使用Mat?lab 操作代碼較少的特點(diǎn),并且對(duì)于選擇網(wǎng)絡(luò)測試工具是比較有效的方法。同時(shí)該方法也可適用于其他工具的選擇問題。