李紅映,張曉曼,張?zhí)鞓s
(浙江農(nóng)林大學(xué)信息與教育技術(shù)中心,浙江 杭州 311300)
計(jì)算機(jī)病毒和黑客攻擊主要利用計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)漏洞和通信協(xié)議竊取用戶密碼,非法訪問計(jì)算機(jī)中的信息資源,竊取機(jī)密信息,破壞計(jì)算機(jī)系統(tǒng)。在網(wǎng)絡(luò)安全設(shè)施中,防火墻是應(yīng)用最廣泛的安全工具。防火墻狀態(tài)檢測已成為研究的熱點(diǎn)之一。
文獻(xiàn)[1]提出一種基于OpenDaylight防火墻狀態(tài)監(jiān)測研究。該體系結(jié)構(gòu)將數(shù)據(jù)轉(zhuǎn)發(fā)層與控制層分離,并在控制層之上打開應(yīng)用程序編程接口,在深入分析軟件定義網(wǎng)絡(luò)的系統(tǒng)原理和體系結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)上,借助軟件項(xiàng)目管理和依賴性分析工具M(jìn)aven和數(shù)據(jù)建模語言Yang,開發(fā)了上層應(yīng)用程序調(diào)用模塊。該方法的防火墻在布局和實(shí)現(xiàn)上具有更大的靈活性。文獻(xiàn)[2]提出一種基于徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)防火墻安全態(tài)勢預(yù)測模型。利用網(wǎng)絡(luò)安全態(tài)勢值非線性時(shí)間序列的特點(diǎn),使用RBF神經(jīng)網(wǎng)絡(luò)找出防火墻安全態(tài)勢值的非線性映射關(guān)系,采用混合遞階遺傳算法對RBF神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和參數(shù)進(jìn)行優(yōu)化,并引入SA提高遺傳算法的全局搜索能力。該算法具有可行性。
但是上述兩種方法的檢測時(shí)間較長,檢測準(zhǔn)確率較低。據(jù)此,提出了基于信任機(jī)制的網(wǎng)絡(luò)防火墻狀態(tài)檢測模型。根據(jù)防火墻的安全性能,結(jié)合信任機(jī)制建立置信度,采用自適應(yīng)閾值算法,判斷網(wǎng)絡(luò)攻擊現(xiàn)象,設(shè)置包過濾防火墻規(guī)則集,運(yùn)用哈希表直接查詢數(shù)據(jù)包,構(gòu)建網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),建立防火墻狀態(tài)檢測模型。實(shí)驗(yàn)結(jié)果表明,所提方法檢測準(zhǔn)確率較高,檢測時(shí)間較短,服務(wù)器能夠有效避免攻擊,提高防火墻的安全性。
安全性能是防火墻的一個(gè)重要指標(biāo),它直接反映了防火墻的可用性。一般來說,當(dāng)防火墻加載數(shù)百條規(guī)則時(shí),包過濾防火墻的性能下降不應(yīng)超過5%。
增強(qiáng)防火墻的可擴(kuò)展性和可升級性。與殺毒產(chǎn)品類似,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展和黑客攻擊手段的變化,防火墻也必須不斷升級。此外,防火墻技術(shù)的發(fā)展趨勢還包括增強(qiáng)防火墻系統(tǒng)的穩(wěn)定性、提高防火墻配置和管理的方便性、過濾用戶身份等。狀態(tài)檢測防火墻具有處理速度快、安全性高等特點(diǎn)。圖1簡要介紹了常用防火墻技術(shù)的安全性能對比。
圖1 常用防火墻技術(shù)的安全性能對比
通過圖1可知,狀態(tài)檢測技術(shù)的安全性能比傳統(tǒng)包過濾技術(shù)和應(yīng)用代理技術(shù)的安全性能高,狀態(tài)檢測技術(shù)具有顯著優(yōu)勢,能夠被廣泛應(yīng)用。
在社會(huì)活動(dòng)中,人們通常根據(jù)對雙方的信任和了解進(jìn)行直接交易,利用歷史記錄或者第三方推薦信息對交易活動(dòng)的可靠性與真實(shí)性實(shí)施準(zhǔn)確評價(jià),按照評價(jià)結(jié)果衡量是否開始交易。在網(wǎng)絡(luò)環(huán)境下,需要根據(jù)信任機(jī)制,建立置信度進(jìn)行可靠性評估[3]。在準(zhǔn)備交易時(shí),需要借助于信任機(jī)制,使得交易雙方都能夠充分了解對方的置信度狀況,以此來提高交易的安全系數(shù),可以防止在進(jìn)行交易過程中出現(xiàn)的不安全問題,有效解決網(wǎng)絡(luò)中存在的危險(xiǎn)。
信任作為基于已有知識的主觀判斷。是主體根據(jù)自身環(huán)境提供特定服務(wù)的一種手段。
將主體A當(dāng)作直接信任,基于其直接交易歷史對主體B的信任程度。
推薦信托是由第三方推薦所產(chǎn)生的信托,又能夠作為間接信托[4]。
置信度是信任的一種量化表達(dá)方式,其置信過程的具體內(nèi)容如圖2所示。
圖2 置信過程圖
從圖2可知,TAB代表實(shí)體A對實(shí)體B的直接信任,TBC代表實(shí)體B對實(shí)體C的直接信任。但是,實(shí)體A需要向?qū)嶓wB求助,因?yàn)閷?shí)體A和實(shí)體C之間沒有直接交易的歷史記錄。根據(jù)實(shí)體B的推薦,實(shí)體A能夠獲取到實(shí)體C的信任建議TAC。
置信度作為與信任密切相關(guān)的定義,但置信度與信任兩者之間存在著一定的差異[5]。為了驗(yàn)證兩者間的相關(guān)程度與差別,下面做進(jìn)一步分析。
置信度作為衡量一個(gè)節(jié)點(diǎn)服務(wù)質(zhì)量的綜合指標(biāo),它可以反映其承諾服務(wù)的性能水平和網(wǎng)絡(luò)內(nèi)其它節(jié)點(diǎn)的信任水平。
與置信度不同,信任表現(xiàn)方式比較主動(dòng),能夠體現(xiàn)出主體對另一個(gè)主體的某種能力的評價(jià),可以對歷史交易記錄評價(jià)。置信度表現(xiàn)方式比較被動(dòng),主要是通過交互或資源共享的歷史記錄對用戶可信程度進(jìn)行衡量,置信度作為一個(gè)可信信息組[6]。
置信度是一個(gè)客觀的全球性概念。信任是網(wǎng)絡(luò)中所有主體對某一主體評價(jià)的總和。信任是一個(gè)具有主觀性的局部概念,它只發(fā)生在兩個(gè)主體之間。信任在某種程度上取決于聲譽(yù),但不完全取決于聲譽(yù)。把聲譽(yù)分為信任的定義中,將此作為信任的一種特例,即聲譽(yù)作為一個(gè)整體的信任程度,在網(wǎng)絡(luò)中服從于某一特定的主體。由此完成信任機(jī)制的建立。
自適應(yīng)閾值算法主要是根據(jù)當(dāng)前對流量的統(tǒng)計(jì),動(dòng)態(tài)設(shè)置異常檢測算法的閾值[7]。能夠準(zhǔn)確運(yùn)算出包數(shù)和流量總和,并將它們與特定的閾值間隔進(jìn)行比較,確定是否存在SYN攻擊現(xiàn)象,把閾值設(shè)置為包數(shù)的估計(jì)平均值。
(1)
另外,為了能夠降低自適應(yīng)閾值算法的錯(cuò)誤率,合理設(shè)定判定條件,其表達(dá)式如下
(2)
在式(2)中,k所描述的是常數(shù),作為超出閾值的連續(xù)間隔個(gè)數(shù)的最小值。
將M作為高強(qiáng)度攻擊的閾值,若當(dāng)前間隔內(nèi)SYN包的數(shù)目超出M,能夠得出網(wǎng)絡(luò)正在受到高強(qiáng)度的攻擊[9]。自適應(yīng)閾值算法預(yù)處理流程具體內(nèi)容如圖3所示。
圖3 自適應(yīng)閾值算法預(yù)處理流程
由圖3可知,需要獲得各個(gè)間隔的SYN包數(shù)Xn,并準(zhǔn)確判斷出Xn是否大于M,若Xn>M那么將采用自適應(yīng)門限算法,檢測其中是否存在SYNFlood攻擊的現(xiàn)象,異常時(shí)丟棄包,同時(shí)記錄包的特征元素。若與之相反,那么將提交給后續(xù)的數(shù)據(jù)包進(jìn)行預(yù)處理。綜上所述,完成自適應(yīng)閾值的預(yù)處理。
當(dāng)防火墻規(guī)則的數(shù)量出現(xiàn)持續(xù)增長,那么將導(dǎo)致規(guī)則查詢防火墻性能的直線下降,促使整個(gè)網(wǎng)絡(luò)系統(tǒng)的安全性能下降[10]。因此,需要調(diào)整分組處理流程。首先,當(dāng)?shù)谝粋€(gè)包到達(dá)時(shí),需要查詢規(guī)則表,記錄包的五個(gè)特征元素,并以哈希表的形式存儲(chǔ)在內(nèi)存中。然后,當(dāng)后續(xù)包到達(dá)時(shí),需要直接查詢哈希表。能夠大大提高規(guī)則查詢的高效性。
假設(shè)這些值與包過濾防火墻中的狀態(tài)檢測防火墻相匹配,那么能夠確定使用規(guī)則集中的值的時(shí)間t,將C作為匹配的次數(shù),在檢測過程中,相同連接狀態(tài)的N個(gè)包需要傳遞匹配的數(shù)量眾多。包過濾工作流程如圖4所示。
圖4 包過濾工作流程圖
通過合理運(yùn)算獲得T1的表達(dá)式為
T1=NCt
(3)
當(dāng)防火墻處于包檢測過程中時(shí),可以先設(shè)置與其值匹配的包過濾防火墻規(guī)則集。完成每個(gè)匹配所需的時(shí)間是具有相同數(shù)量的匹配規(guī)則[11]。
因?yàn)樗幱跈z測狀態(tài),所以只能在第一個(gè)包經(jīng)過時(shí)在規(guī)則庫中進(jìn)行匹配。C×t所描述的是匹配所需的時(shí)間,N-1包能夠直接完成數(shù)值匹配。T所描述的是每次匹配的時(shí)間,T2所描述的是整個(gè)匹配過程所需的時(shí)間,其表達(dá)式如下
T2=C×t+(N-1)×t
(4)
通過比較T1和T2,可以看出N和C之間的關(guān)系是相乘的,而N和C之間的關(guān)系是求和的。能夠看出,狀態(tài)檢測技術(shù)在一定程度上提高了系統(tǒng)的檢測效率。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖5所示。
圖5 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
從圖5中可知,在攻擊者上安裝攻擊工具tfn2k,PC代表性能測試儀,U代表服務(wù)器機(jī)箱的高度,2U為8.9厘米[12]。將其與交換機(jī)連接,然后使用工具查看數(shù)據(jù)包信息。在性能測試儀內(nèi)設(shè)立網(wǎng)絡(luò)監(jiān)控軟件,可以實(shí)時(shí)查看網(wǎng)絡(luò)狀態(tài),衡量防火墻規(guī)則查詢的速度和對系統(tǒng)性能的影響。通過上述步驟,完成網(wǎng)絡(luò)防火墻狀態(tài)檢測模型。
為了驗(yàn)證所提方法的準(zhǔn)確性和有效性,實(shí)驗(yàn)環(huán)境采用Visual Basic6.0,同時(shí)利用Microsoft Access存儲(chǔ)防火墻策略和對比結(jié)果。測試機(jī)器的硬件配置為CPU 2GHz、RAM 1GB,操作系統(tǒng)為Windows。實(shí)驗(yàn)采用2500個(gè)數(shù)據(jù)包,分別采用所提方法、文獻(xiàn)[1]方法和文獻(xiàn)[2]方法進(jìn)行檢測,對比不同方法的防火墻狀態(tài)檢測時(shí)間,對比結(jié)果如圖6所示。
圖6 不同方法的防火墻狀態(tài)檢測時(shí)間對比結(jié)果
從圖6可以看出,當(dāng)數(shù)據(jù)包達(dá)到2500個(gè)時(shí),文獻(xiàn)[1]方法的防火墻狀態(tài)平均檢測時(shí)間為6s,文獻(xiàn)[2]方法的防火墻狀態(tài)平均檢測時(shí)間為8.5s,而所提方法的防火墻狀態(tài)平均檢測時(shí)間僅為2.5s。隨著數(shù)據(jù)包的增加,文獻(xiàn)[2]方法的防火墻狀態(tài)平均檢測時(shí)間最長,文獻(xiàn)[1]方法次之,而所提方法的防火墻狀態(tài)平均檢測時(shí)間最短,由此可知,所提方法的防火墻狀態(tài)檢測時(shí)間較短,因?yàn)樗岱椒ㄔO(shè)置了與其值匹配的包過濾防火墻規(guī)則集,獲得具有相同數(shù)量的匹配規(guī)則,從而有效縮短防火墻狀態(tài)檢測時(shí)間。
為了驗(yàn)證所提方法的檢測準(zhǔn)確率,設(shè)置總的入侵事件數(shù)量為500個(gè),分別采用文獻(xiàn)[1]方法、文獻(xiàn)[2]方法與所提方法進(jìn)行檢測,利用式(5)計(jì)算檢測準(zhǔn)確率,具體公式如下:
(5)
得出不同方法的檢測準(zhǔn)確率對比結(jié)果如圖7所示。
圖7 不同方法的檢測準(zhǔn)確率對比結(jié)果
從圖7中可以看出,當(dāng)入侵事件個(gè)數(shù)達(dá)到500個(gè)時(shí),文獻(xiàn)[1]方法的平均檢測準(zhǔn)確率為72%,文獻(xiàn)[2]方法的平均檢測準(zhǔn)確率為60%,而所提方法的平均檢測準(zhǔn)確率高達(dá)91%,由此可知,所提方法的檢測準(zhǔn)確率較高,因?yàn)樗岱椒ǜ鶕?jù)信任機(jī)制,建立置信度進(jìn)行可靠性評估,在一定程度上提高了入侵事件的檢測準(zhǔn)確率。
為了驗(yàn)證所提方法的服務(wù)器防攻擊效果,攻擊者通過交換機(jī)的連接向服務(wù)器發(fā)送惡意攻擊,對防火墻上攻擊防御子板塊功能進(jìn)行開啟,運(yùn)用網(wǎng)絡(luò)檢測工具實(shí)施操作,查看惡意攻擊內(nèi)容是否通過防火墻,受保護(hù)主機(jī)是否受到攻擊。攻擊服務(wù)器對比結(jié)果如表1所示。
表1 攻擊服務(wù)器對比實(shí)驗(yàn)結(jié)果
從表1可以看出,當(dāng)攻擊防御機(jī)制啟用時(shí),服務(wù)器可以避免攻擊。攻擊方法是利用碎片軟件強(qiáng)行分割TCP主動(dòng)連接的組件IP包,然后將40包/秒主動(dòng)連接包發(fā)送到服務(wù)器打開的444端口。當(dāng)攻擊防御功能未啟動(dòng)時(shí),數(shù)據(jù)包由防火墻轉(zhuǎn)發(fā),使DOS出現(xiàn)在服務(wù)器內(nèi)。當(dāng)攻擊防御功能啟用時(shí),防火墻連接跟蹤機(jī)制分析緩存碎片,防火墻丟棄攻擊消息。端口掃描攻擊實(shí)驗(yàn)如表2所示。
表2 端口掃描攻擊實(shí)驗(yàn)結(jié)果
從表2可以看出,在服務(wù)器上編寫一個(gè)特殊的測試郵件接收服務(wù)進(jìn)程,不受任何安全保護(hù)和會(huì)話限制。服務(wù)進(jìn)程端口在每個(gè)實(shí)驗(yàn)期間隨機(jī)更改。增加攻擊進(jìn)程數(shù)并不能顯著提高攻擊成功率。所提方法端口能夠有效掃描攻擊,有效提高防火墻自身的安全性。設(shè)計(jì)的安全關(guān)鍵在于操作系統(tǒng),而應(yīng)用系統(tǒng)的安全是基于操作系統(tǒng)的安全。同時(shí),防火墻的安全實(shí)現(xiàn)直接影響到整個(gè)系統(tǒng)的安全。
為了縮短當(dāng)前網(wǎng)絡(luò)防火墻狀態(tài)檢測時(shí)間,提高檢測準(zhǔn)確率及防火墻安全性,防止服務(wù)器受到攻擊。提出基于信任機(jī)制的網(wǎng)絡(luò)防火墻狀態(tài)檢測模型。采用信任機(jī)制建立置信度,利用自適應(yīng)閾值算法判斷網(wǎng)絡(luò)攻擊現(xiàn)象并進(jìn)行預(yù)處理,設(shè)置包過濾防火墻規(guī)則集,運(yùn)用哈希表直接查詢數(shù)據(jù)包,構(gòu)建網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),建立防火墻狀態(tài)檢測模型。實(shí)驗(yàn)結(jié)果表明,所提方法的檢測準(zhǔn)確率及防火墻安全性較高,可以避免服務(wù)器攻擊,能夠縮短防火墻狀態(tài)檢測時(shí)間。