基本介紹
深度包檢測技術即DPI技術是一種基於套用層的流量檢測和控制技術,當IP數據包、TCP或UDP數據流通過基於DPI技術的頻寬管理系統時,該系統通過深入讀取IP包載荷的內容來對OSI七層協定中的套用層信息進行重組,從而得到整個應用程式的內容,然後按照系統定義的管理策略對流量進行整形操作。
深度包檢測技術的分類
1.基於“特徵字”的識別技術
不同的套用通常依賴於不同的協定,而不同的協定都有其特殊的指紋,這些指紋可能是特定的連線埠、特定的字元串或者特定的Bit 序列。基於“特徵字”的識別技術通過對業務流中特定數據報文中的“指紋”信息的檢測以確定業務流承載的套用。
根據具體檢測方式的不同,基於“特徵字”的識別技術又可以被分為固定位置特徵字匹配、變動位置的特徵匹配以及狀態特徵匹配三種技術。通過對“指紋”信息的升級,基於特徵的識別技術可以很方便的進行功能擴展,實現對新協定的檢測。如:Bittorrent 協定的識別,通過反向工程的方法對其對等協定進行分析,所謂對等協定指的是peer與peer之間交換信息的協定。對等協定由一個握手開始,後面是循環的訊息流,每個訊息的前面,都有一個數字來表示訊息的長度。在其握手過程中,首先是先傳送19,跟著是字元串“BitTorrent protocol”。那么“19BitTorrent Protocol”就是Bittorrent的“特徵字”。
2.套用層網關識別技術
某些業務的控制流和業務流是分離的,業務流沒有任何特徵。這種情況下,我們就需要採用套用層網關識別技術。套用層網關需要先識別出控制流,並根據控制流的協定通過特定的套用層網關對其進行解析,從協定內容中識別出相應的業務流。
對於每一個協定,需要有不同的套用層網關對其進行分析如SIP、H323協定都屬於這種類型。SIP/H323通過信令互動過程,協商得到其數據通道,一般是RTP格式封裝的語音流。也就是說,純粹檢測RTP流並不能得出這條RTP流是那通過那種協定建立的。只有通過檢測SIP/H323的協定互動,才能得到其完整的分析。
3.行為模式識別技術
行為模式識別技術基於對終端已經實施的行為的分析,判斷出用戶正在進行的動作或者即將實施的動作。行為模式識別技術通常用於無法根據協定判斷的業務的識別。例如:SPAM(垃圾郵件)業務流和普通的Email業務流從Email的內容上看是完全一致的,只有通過對用戶行為的分析,才能夠準確的識別出SPAM業務。
以上三種識別技術分別用於不同類型協定的識別,無法相互替代。而華為公司在套用DPI 技術部署DPI 系統時採用了多業務控制網關MSCG分層DPI 解決方案,綜合運用了這三種技術,在檢測效率和靈活性方面均達到最優。
深度包檢測技術的特徵
1.套用層加密/解密
SSL廣泛被套用於各種場合,以確保相關數據的安全性。這就對防火牆提出了新要求:必須能夠處理數據加密/解密。如果不對SSL加密的數據進行解密,防火牆就不能對負載的信息進行分析,更不可能判斷數據包中是否含有套用層攻擊信息。如果沒有解密功能,深度檢測的所有優點都無法體現出來。
由於SSL加密的安全性很高,企業常使用SSL技術,以確保關鍵應用程式的通訊數據的安全性。如果深度檢測不能對企業中關鍵應用程式提供深度檢測安全性的話,整個深度檢測的優勢將失去意義。
2.正常化
防範套用層攻擊,很大程度上依賴於字元串匹配。不正常的匹配會造成安全漏洞。比如,為了探知某種請求的安全策略是否被啟用,防火牆通常根據請求的URL與安全策略來進行匹配。一旦與某種策略條件完全匹配,防火牆就採用對應的安全策略。指向同一個資源的URL或許有多種不同形態,如果該URL的編碼方式不同的話,二進制方式的比較就不起作用了。攻擊者會利用各種技術,對輸入的URL進行偽裝,企圖避開字元串匹配,以達到越過安全設備的目的。
這些攻擊行為,在欺騙IDS和IPS方面,特別有效,因為攻擊代碼只要與安全設備的特徵庫有一點點不同的話,就能夠達到目的。解決字元串匹配問題需要利用正常化技術,深度檢測能夠識別和阻止大量的攻擊。對於防範隱藏在幀數據、Unicode、URL編碼,雙重URL編碼和多形態的Shell等類型的攻擊行為,必須要用到正常化技術。
3.協定一致性
套用層協定,如HTTP、SMTP、POP3、DNS、IMAP和FTP,在應用程式中經常用到。每個協定,都由RFC(Request For Comments)相關規範創建。
深度檢測防火牆,必須確認套用層數據流是否與這些協定定義相一致,以防止隱藏其中的攻擊。深度檢測在套用層進行狀態檢測。協定一致性,通過對協定報文的不同欄位進行解密而實現,當協定中的欄位被識別出來後,防火牆採用RFC定義的套用規則,來檢查其合法性。
4.雙向負載檢測
深度檢測具有強大功能,能夠允許數據包通過,拒絕數據包,檢查或修改第4到7層數據包,包括包頭或負載。HTTP深度檢測能夠查看到訊息體中的URL,包頭和參數等信息。深度檢測防火牆能夠自動進行動態配置,以便正確檢測服務變數,如最大長度,隱藏欄位和Radio按鈕等等。如果請求的變數不匹配,不存在或者不正確的話,深度檢測防火牆會將請求丟棄掉,將該事件寫入日誌,並給管理員發出警告信息。
深度包檢測技術的功能
1.業務識別
一般而言,對於業務識別有兩種方法,一種是對運營商開通的合法業務,另外一種是運營商需要進行監管的業務。前者可以通過業務流的五元組來標識,如VOD業務,其業務流的地址是屬於vod伺服器網段的地址,其連線埠是一個固定的連線埠。系統一般採用ACL的方式,識別出該類業務。後者需求DPI技術,通過前述的業務識別方法,通過對IP數據包的內容進行分析,通過特徵字的查找或者業務的行為統計,得到業務流的類型。
2.業務控制
通過DPI 技術識別出各類業務流之後,根據網路配置的組合條件,如用戶、時間、頻寬、歷史流量等,對業務流進行控制。控制方法包括:正常轉發、阻塞、限制頻寬、整形、重標記優先權等。為了便於業務的運營,業務控制策略一般集中配置在策略伺服器中,用戶上線後動態下發。
3.業務統計
DPI 的業務統計功能是為了直觀的統計網路的業務流量分布和用戶的各種業務使用情況,從而更好的發現促進業務發展和影響網路正常運營的因素,為網路和業務最佳化提供依據。如:發掘對用戶有吸引力的業務、驗證業務提供水平是否達到了用戶的服務等級協定SLA、統計分析出網路中的攻擊流量占多少比例、多少用戶正在使用某種遊戲業務、哪幾種業務最消耗網路的頻寬和哪些用戶使用了非法VOIP等等。