基于流過(guò)濾技術(shù)的IPv6防火墻設計與分析
1 引言
本文引用地址:http://dyxdggzs.com/article/163277.htm“流過(guò)濾”技術(shù)融合了包過(guò)濾和應用代理安全性和優(yōu)點(diǎn),克服了包過(guò)濾和應用代理的諸多缺陷,代表了一種全新的防火墻技術(shù)結構。在大家紛紛開(kāi)始關(guān)注應用層安全的今天,“流過(guò)濾”技術(shù)架構更加顯示了其前瞻性和先進(jìn)性。經(jīng)過(guò)近幾年的不斷完善和實(shí)際使用中的磨合,新產(chǎn)品的“流過(guò)濾”引擎已經(jīng)相當成熟和完善,在性能和穩定性方面得到了大幅度的提升,使其能夠滿(mǎn)足關(guān)鍵業(yè)務(wù)領(lǐng)域的長(cháng)期穩定運行的要求。但這都是針對IPv4防火墻的,隨著(zhù)IPv6網(wǎng)絡(luò )[1]的普及,對基于流過(guò)濾技術(shù)的IPv6防火墻設計和分析則是一個(gè)新的研究熱點(diǎn)。
2 流過(guò)濾技術(shù)研究
“流過(guò)濾”技術(shù)[2]是以狀態(tài)檢測包過(guò)濾的形態(tài)實(shí)現對應用層保護的一種防火墻過(guò)濾技術(shù),基本原理是在狀態(tài)檢測包過(guò)濾的基礎上,針對具體應用層協(xié)議采用專(zhuān)門(mén)設計的TCP/IP協(xié)議棧實(shí)現對鏈路層數據流在應用層重組并在此基礎上進(jìn)行過(guò)濾,以包過(guò)濾的形態(tài)提供應用層保護能力,使得規則匹配在防火墻內部由數據鏈路層直達應用層。
2.1 流過(guò)濾處理策略
在流過(guò)濾報文處理策略中,要對不同報文區別對待,一部分類(lèi)型的報文使用流過(guò)濾技術(shù),其它類(lèi)型的報文使用包過(guò)濾技術(shù),比如說(shuō)ARP報文、UDP報文、非用來(lái)傳輸數據的TCP報文都使用包過(guò)濾技術(shù),這些報文可根據MAC首部、IP首部、TCP首部進(jìn)行判斷。但判斷用來(lái)傳輸數據的TCP報文中哪些使用流過(guò)濾技術(shù)哪些使用包過(guò)濾技術(shù)的判定依據是TCP報文中的首部端口號、某些標志字段及應用層協(xié)議首部某些字段。使用流過(guò)濾技術(shù)的報文稱(chēng)為關(guān)鍵報文,而其它的報文統稱(chēng)為非關(guān)鍵報文。
2.2 流過(guò)濾的處理步驟
當對關(guān)鍵報文應用流過(guò)濾技術(shù)處理時(shí),流過(guò)濾技術(shù)邏輯上斷開(kāi)數據發(fā)送端與數據接受端之間的直接網(wǎng)絡(luò )連接,即發(fā)送端與接受端之間在傳輸數據之前建立的網(wǎng)絡(luò )連接仍然存在,但發(fā)送端與接受端之間的數據傳輸必須通過(guò)使用流過(guò)濾技術(shù)的防火墻中轉。如圖1所示。
圖1 防火墻利用流過(guò)濾技術(shù)對關(guān)鍵報文進(jìn)行處理的過(guò)程,按照時(shí)間先后順序可分為三個(gè)步驟:
?。?)對發(fā)送端發(fā)送應答報文,并將同一會(huì )話(huà)中的全部關(guān)鍵報文在應用層數據重組。
?。?)按照流過(guò)濾規則對重組后的完整數據進(jìn)行合法性檢查,并做相應處理。
?。?)對通過(guò)合法性檢查的數據發(fā)送給接受端,并處理接受端發(fā)出的應答報文。
2.3 流過(guò)濾實(shí)現要點(diǎn)
?。?)報文分類(lèi):首先利用報文信息判斷第一個(gè)報文是否為關(guān)鍵報文,若是,記錄下IPv6基本報頭的流標識字段值。對于收到的第二個(gè)報文,先與第一個(gè)比較流標識字段值,若相等,則說(shuō)明它們屬于同一個(gè)會(huì )話(huà),第二個(gè)報文也為關(guān)鍵報文;否則再利用報文信息判斷是否為關(guān)鍵報文,若是,記錄下流標識字段值。
?。?)發(fā)送應答報文:關(guān)鍵在于應答報文中IP首部標識字段、TCP首部確認序號及IP首部、TCP首部校驗和的計算。
?。?)判斷同一會(huì )話(huà)關(guān)鍵報文是否傳輸完畢:在同一會(huì )話(huà)中收到TCP首部FIN標志位為1的報文,即可確定傳送傳輸完畢。
?。?)重組關(guān)鍵報文:通過(guò)報文中TCP首部序號字段的值及應用數據的長(cháng)度發(fā)現重復報文,并根據后發(fā)送報文的TCP首部序字段的值等于先發(fā)送報文TCP首部序號值加上應用層數據長(cháng)度加1這條規則,排列好同一會(huì )話(huà)的所有報文。
?。?)發(fā)送合法數據:需要發(fā)送數據時(shí)把原始報文按順序發(fā)送給接受端。
3 IPv6防火墻系統的設計
3.1 體系結構
在IPv6網(wǎng)絡(luò )通信中,數據流是以密文的形式在網(wǎng)絡(luò )中傳輸,IPv6報文都是加密的,防火墻無(wú)法獲得相關(guān)信息進(jìn)行過(guò)濾,要么全部阻攔數據包則網(wǎng)絡(luò )將不能進(jìn)行通信,要么全部放行則容易受到攻擊。為解決這一問(wèn)題,本文將采用屏蔽子網(wǎng)防火墻系統結構[4],在此系統中的堡壘主機上實(shí)現流過(guò)濾技術(shù)。如圖2所示。

圖2 IPV6防火墻體系結構圖
該系統層次結構示意圖如圖3所示。
圖3 IPv6防火墻系統層次結構示意圖
評論