那么統(tǒng)一策略框架到底是如何運(yùn)轉(zhuǎn)的呢,從上圖可以看出,數(shù)據(jù)流入下一代防火墻之后,大抵會經(jīng)過三個階段:
a) 初始數(shù)據(jù)包篩選階段
當(dāng)初始數(shù)據(jù)包進(jìn)入統(tǒng)一策略系統(tǒng)后,系統(tǒng)首先會根據(jù)傳統(tǒng)五元組信息對數(shù)據(jù)流進(jìn)行初始分類,然后進(jìn)行第一次策略匹配。如果發(fā)現(xiàn)安全策略為禁止,則該處理流程結(jié)束,后續(xù)處理過程也不會進(jìn)行,如果策略顯示為非禁止,則執(zhí)行后續(xù)處理流程。
b) 應(yīng)用分類及篩選階段
數(shù)據(jù)流經(jīng)過初始篩選過后,統(tǒng)一策略框架的應(yīng)用分類系統(tǒng)會對其進(jìn)行更加細(xì)粒度的區(qū)分,形成三種不同的應(yīng)用類型:已知的非加密應(yīng)用,加密應(yīng)用及未知應(yīng)用。
對于已知的非加密應(yīng)用,會直接對其進(jìn)行識別和篩選處理。
對于加密應(yīng)用來說,統(tǒng)一策略框架需要配置對應(yīng)的解密策略,如果配置了解密策略,則系統(tǒng)自身的解密引擎會啟動,并且根據(jù)類似代理的方式對該應(yīng)用執(zhí)行解密,同時(shí)將解密的應(yīng)用納入至已知應(yīng)用分類中。
對于某些未知應(yīng)用來說,可以通過數(shù)據(jù)包抓包,日志捕獲等形式將原始數(shù)據(jù)信息提交至相關(guān)的應(yīng)用簽名分析及處理系統(tǒng)中(也可能是應(yīng)用簽名團(tuán)隊(duì)),通過該處理系統(tǒng)執(zhí)行一系列分析及處理流程,形成新的應(yīng)用簽名更新至應(yīng)用簽名庫內(nèi)。
對于經(jīng)過上述分類的應(yīng)用程序,統(tǒng)一策略框架系統(tǒng)會對上述應(yīng)用進(jìn)行篩選,此時(shí)可以執(zhí)行的操作可以包括如下:
禁止或者允許某一種或者某一類應(yīng)用。
允許使用某類應(yīng)用,但是禁止該類應(yīng)用的某些動作,如:允許用戶使用QQ,但是禁止該用戶使用QQ進(jìn)行視頻聊天及文件共享。
有限制的允許,如僅允許某類應(yīng)用在某特定時(shí)間段內(nèi)被某類用戶或者用戶組訪問。如:僅允許財(cái)務(wù)人員在周一至周五時(shí)間段內(nèi)訪問公司財(cái)務(wù)數(shù)據(jù)庫。
c) 安全控制階段
對于經(jīng)過初步的數(shù)據(jù)包篩選及精細(xì)化的應(yīng)用程序分類篩選以后,隨后會進(jìn)入安全控制階段,此階段可以通過多種多樣的安全策略對該目標(biāo)應(yīng)用程序執(zhí)行相關(guān)動作。比如上述提到MSN應(yīng)用,對于MSN應(yīng)用來說,經(jīng)過應(yīng)用篩選后,系統(tǒng)已經(jīng)對大部分MSN應(yīng)用做了禁止,但是開放了MSN登錄及MSN傳輸文件的功能,那么我們可以對已經(jīng)允許的該部分功能進(jìn)行如下動作:
對于MSN的文件傳輸進(jìn)行深度內(nèi)容掃描,并且執(zhí)行脆弱性掃描,文件病毒掃描,以及惡意軟件檢測。
對MSN傳輸?shù)奈募M(jìn)行流量管理,如限制傳輸文件的流量不大于1Mbps等。
關(guān)鍵組件分析
如果把統(tǒng)一策略框架比如為一輛高速行駛的馬車的話,那么如果要保證馬車能夠始終快速行駛,那么需要具備兩個基本條件:一匹好馬及一對經(jīng)久耐用的車輪,那么同樣對于統(tǒng)一策略框架來說如果要保證良好的可用性及運(yùn)轉(zhuǎn)效率,同樣也需要兩種關(guān)鍵組件作為支撐,即一體化引擎及應(yīng)用識別技術(shù)。
高效率的一體化引擎
一直以來類似統(tǒng)一威脅管理(UTM)的設(shè)備在單一盒子上集成多種安全功能,其性能效率一直被外界詬病。主要原因是UTM僅僅是把多種安全引擎疊加在一起,而不是從底層進(jìn)行重新架構(gòu)設(shè)計(jì),這樣做的結(jié)果就是數(shù)據(jù)流會在每個安全引擎分別執(zhí)行解碼,狀態(tài)復(fù)原等操作,從而導(dǎo)致大量消耗系統(tǒng)資源,所以當(dāng)UTM啟動全部功能時(shí),系統(tǒng)性能大幅度降低也不足為奇了。UTM產(chǎn)品的大致數(shù)據(jù)處理過程如下圖:
而下一代防火墻在設(shè)計(jì)上采用一體化引擎的架構(gòu),這種一體化引擎架構(gòu)可以保證引擎系統(tǒng)在數(shù)據(jù)流流人時(shí),一次性的完成策略查找,應(yīng)用程序識別/解碼以及 內(nèi)容掃描(病毒,間諜程序,入侵防御)等工作,同時(shí)結(jié)合先進(jìn)的硬件平臺,從而實(shí)現(xiàn)最高的處理性能及最小的延遲。下一代防火墻的引擎處理過程如下圖:
舉一個簡單的例子:在需要同時(shí)開啟防火墻,IPS及URL過濾的用戶場景下,對于UTM產(chǎn)品來說,數(shù)據(jù)包處理流程為:數(shù)據(jù)包先進(jìn)行鏈路層及網(wǎng)絡(luò)層的 拆包,然后做傳輸層端口檢查,最后查找匹配防火墻策略,封包進(jìn)入IPS引擎,進(jìn)入IPS引擎后會再做一次數(shù)據(jù)包鏈路層/網(wǎng)絡(luò)層拆包,進(jìn)入應(yīng)用協(xié)議解碼程 序,將應(yīng)用層解碼后將獲取到的數(shù)據(jù)與原有的IPS特征碼進(jìn)行模式匹配,異常行為匹配后,與IPS策略進(jìn)行匹配,再進(jìn)行數(shù)據(jù)包封裝,才進(jìn)入U(xiǎn)RL分類引擎, 此時(shí)又要重新進(jìn)行數(shù)據(jù)包拆封,應(yīng)用層解碼等程序,最終提取URL信息做模式匹配,最終再將數(shù)據(jù)包封裝通過URL分類策略做轉(zhuǎn)發(fā)。
同樣的用戶場景,對于下一代防火墻來說,數(shù)據(jù)包流入以后,下一代防火墻會先進(jìn)行網(wǎng)絡(luò)層,應(yīng)用層等拆包分析,然后分別與一體化策略匹配,如果策略禁止 則直接丟棄,如果允許則進(jìn)行下一層拆解,然后分別通過IPS策略檢查及URL分類過濾策略后,通過執(zhí)行統(tǒng)一安全策略進(jìn)行轉(zhuǎn)發(fā)及丟棄決策,全部策略執(zhí)行完畢 后對數(shù)據(jù)包封包,轉(zhuǎn)發(fā)。
很顯然,對于上述用戶場景,同等硬件條件下,其數(shù)據(jù)包處理效率遠(yuǎn)遠(yuǎn)超過UTM產(chǎn)品。
精準(zhǔn)的應(yīng)用識別
為了能夠精確的識別網(wǎng)絡(luò)中存在的所有應(yīng)用,一般來說需要具備以下四種應(yīng)用識別技術(shù),如下圖:
簽名匹配技術(shù)
簽名類似于應(yīng)用程序的指紋系統(tǒng),主要用來唯一的標(biāo)識網(wǎng)絡(luò)數(shù)據(jù)流中某一類應(yīng)用程序。無論該應(yīng)用程序使用了何種協(xié)議及外部端口,均可以通過該應(yīng)用簽名對 該類應(yīng)用程序進(jìn)行匹配。例如某些知名的應(yīng)用協(xié)議如RDP,由于在某些情況下可能沒有采用標(biāo)準(zhǔn)的3389端口,而是采用了其他非標(biāo)準(zhǔn)端口(如:80等),對 于一般的狀態(tài)防火墻來說,很難對其進(jìn)行鑒別,而對于基于端口及協(xié)議無關(guān)的下一代防火墻來說,則可以通過簽名匹配的方式對該協(xié)議進(jìn)行識別及策略的控制。
應(yīng)用協(xié)議解密技術(shù)
用戶網(wǎng)絡(luò)中充斥著大量的加密應(yīng)用,對于此類應(yīng)用,傳統(tǒng)的應(yīng)用識別方式很難對其進(jìn)行識別,對于下一代防火墻來說,只需要提前導(dǎo)入應(yīng)用服務(wù)器證書中的私 鑰信息,當(dāng)客戶端向應(yīng)用服務(wù)器發(fā)起加密應(yīng)用連接時(shí),會被處于中間位置的下一代防火墻截獲,同時(shí)由于下一代防火墻證書信息已經(jīng)包含了服務(wù)器的私鑰,因此可以 對此應(yīng)用進(jìn)行解密操作,基本原理如下圖:
協(xié)議解碼技術(shù)
在某些應(yīng)用場景下,應(yīng)用會以隧道的形式嵌套至某些知名應(yīng)用協(xié)議之內(nèi)(例如網(wǎng)頁版QQ會通過HTTP進(jìn)行傳輸)。此時(shí)便需要協(xié)議解碼技術(shù)與簽名匹配技 術(shù)共同配合使用對該類應(yīng)用進(jìn)行識別,另外對于某些復(fù)雜的流行軟件來說,協(xié)議解碼技術(shù)還可以用于識別這些流行應(yīng)用程序的子應(yīng)用(如:QQ,MSN等通訊軟件 的文件共享功能)。
智能識別技術(shù)
對于某些特殊應(yīng)用來說,通用的簽名匹配技術(shù)及協(xié)議解碼技術(shù)可能仍然無法對其進(jìn)行識別,這時(shí)候便需要使用智能識別技術(shù)或者行為分析技術(shù)。比如對于P2P或VoIP類應(yīng)用來說,智能識別技術(shù)會通過數(shù)據(jù)會話模型,流量信息,源數(shù)據(jù)包信息,數(shù)據(jù)包長度等多種方式進(jìn)行綜合判斷。
下一代防火墻的統(tǒng)一策略框架與一體化引擎及應(yīng)用識別技術(shù)是一套極為復(fù)雜的技術(shù)體系,可能很難通過寥寥數(shù)語便能把它描述清楚。因而本文不可避免會出現(xiàn)部分內(nèi)容描述不準(zhǔn)確或者與實(shí)際存在出入的地方,敬請讀者諒解。
另外筆者始終認(rèn)為下一代防火墻的核心思想是為了向用戶交付更加高效,更具可用性的網(wǎng)絡(luò)安全系統(tǒng),因而選擇把極其復(fù)雜的安全邏輯及模塊關(guān)系最大程度的隱藏,這也符合下一代防火墻的真諦——更簡單,更安全,更高效。