各種調查、眾多事例以及媒體報道都在關注同樣一個重大問題,即電信與計算機網絡的安全性需求日益增長。
《CSO》-《首席安全官》雜志、美國聯邦經濟情報局以及 CERT 協調中心于 2004 年進行的一項調查[1]顯示,受調查的網絡安全或IT部門的管理人員及執法部門人員中有 77% 稱其所在機構遭受過電子犯罪(特別是惡意軟件代碼的攻擊)。這種代碼的范圍十分廣泛,其中包括病毒、蠕蟲、特洛伊木馬、間諜軟件以及后門軟件等。
第二種常見的電子犯罪是拒絕服務 (DoS) 攻擊,約有 44% 的受調查者受到過其影響。 Cisco 近期收購了一家剛成立一年的新創公司 NetSift,這進一步說明電子犯罪迫切需要我們的高度重視 [2]。
與有關電子犯罪進行斗爭,通常采取的方法是簽名模式匹配 (signature pattern matching),即掃描進入流量是否包含已知的惡意代碼。隨著網絡的訪問節點從快速以太網發展到千兆以太網,骨干網絡連接速度也從 OC-192 (10 Gbits/s) 上升到 OC-768 (40 Gbits/s)。
對于這種線路速度而言,采用軟件檢查數據包的方法已經很不實用了,因為我們幾乎沒有時間來進行上述檢查。這種情況要求我們采用基于硬件的數據包監測工具 (packet monitor) 來跟上線路傳輸速度的要求。同時,路由器必須處理的簽名(或規則)數量也從 10 年前的約 1,000 個增長到了目前支持細分服務的網絡中的數千個。
規則數據庫規定應如何對進入的數據包進行分類、細分服務、安全性、負載平衡以及流量測量等方面的處理。這些數據庫包含有10萬條規則,目前正處于探討之中,在今后一兩年內預計就可以應用于網絡中[3]。由于網絡處理器本身就是高度優化的專用集成電路 (ASIC) 器件,根據數據庫中規定的規則執行高速模式匹配工作,因此其能夠很好地滿足打擊電子犯罪的要求。
以上的圖 1 顯示了典型的入侵檢測系統,該系統在 IDS 中采用網絡處理器,用于進行簽名匹配。
以下圖 2 顯示的簡單 (Aho ? Corasick) 算法采用狀態機在進入流量中搜索所有已知的惡意簽名。搜索從根節點 (root node) 開始。只要有新的字符抵達,就會根據到達字符來改變狀態。如果出現紅色節點,就意味著找到了簽名,并隨之采取糾正措施,如避免該數據包進入 LAN,將其存儲用作隨后的分析并向有關管理部門發出告警等。
如果新字符未發現問題,也沒有出現在目錄樹中,則搜索會重置為 START 節點。我們還采用 Bloom 過濾器等技術來提高效率,從而改善上述工作方法 [4]。 Bloom 過濾器作為預處理器工作,在識別可能有害的代碼的同時讓大多數正常信息流通過,查到的潛在有害的代碼要進行全面檢查,從而降低檢查系統的負荷。
DDoS 攻擊
拒絕服務 (DoS) 攻擊會使合法用戶不能從所需的資源處獲得服務,這種攻擊手段通常使用大量無用信息流量使網絡處于癱瘓狀態。大量無用信息會使服務供應方(如 web 服務器)過載,從而導致無法交付服務。DoS 攻擊還有可能導致系統之間不能實現彼此通信。
分布式拒絕服務 (DDoS) 攻擊采用“多對一”的方式進行攻擊,通常會控制數臺僵尸機 (zombie machine)(即在主人不知情的情況下被控制用來進行攻擊的系統)同時向目標服務供應方系統進行攻擊。針對這種攻擊,我們提出了相關解決方案 [6]。典型的方法是將合法信息流量與大量的 DdoS 流量相分離,忽略旨在消耗資源的非法流量,同時繼續為合法流量提供服務。我們可以通過同時采用以下技術來實現上述目的:
- 將客戶端(如 web 瀏覽器)重新指向新的服務器 IP 地址與端口號,從而識別包含真實 IP 源地址的數據包,并剔除欺騙性數據包。由于重定向進程可針對客戶端的IP 源地址采用消息認證代碼 (MAC),因此我們能夠識別并剔除欺騙性數據包。
- 如攻擊者用合法 IP 地址進行攻擊,則應采取配額系統 (quota system) 來應對。這可確保所有客戶端系統不會非法消耗大量可用資源,從而避免了客戶端不能獲得服務的情況發生(即拒絕服務)。
- 讓客戶端(如 web 瀏覽器)“解決”密碼問題。該技術讓客戶端(如本例中的 web 瀏覽器)必須承擔一定的計算任務才能獲得所需的服務(如下載網頁)。相關可行性算法[5]能夠確保讓請求服務的客戶端(通常為終用戶的計算機終端)執行適量的計算任務,這樣就能避免過載。我們強制客戶端計算機終端每次都為獲得所請求的服務執行小量的計算,這樣就能查出黑客是否已經控制僵尸機來進行攻擊。
有鑒于此,只要系統發生危險,就會向系統主人與主管部門發出告警。只要實施良好的 IT 策略,企業就能解決攻擊者控制僵尸機的問題,從而贏得打擊電子犯罪的戰斗。
-盡管我們事先不能確切了解會發生什么情況,但采用算法可測量通信流量是否正常[7]。我們可用網絡處理器中提供的精細粒度流量測量功能來識別可疑的流量模式,一旦發現便可進行隔離檢查,避免其進入本地網絡。
攻擊復雜化
由于在 web 上很容易就能獲得惡意代碼,造成攻擊技術不斷升級,在此情況下,惡意代碼簽名常常分散在多個數據包內(因此只檢測單個數據包的機制再也滿足不了目前需求),有些簽名還會加密,這使檢測工作的難度不斷加大。這些情況要求 IDS 設備能夠保持良好狀態,即在各種數據包中跟蹤惡意代碼簽名,同時還要對進入流量進行解密。IDS 設備還應在檢測后對正常流量進行加密,這樣才能確保按需到達目的地。
過去一兩年間,還出現了幾種組合型威脅(稱作“多重攻擊 (Blended Threat)”)的情況。這些攻擊會同時采用一系列病毒、蠕蟲、特洛伊木馬技術的組合,使惡意代碼能夠利用服務器與因特網的薄弱環節。這種混合式威脅用多樣化的手段進行擴散式攻擊。因此,上述攻擊更難檢測和預防。這些多重攻擊的情形多樣,其中包括在 web服務器中嵌入軟件代碼,從而造成訪客感染;發送帶有蠕蟲附件的垃圾郵件;以及無需人工干預就能自動擴散傳播。這種攻擊在會話開始時就檢測到,否則很難打敗它。
在上述情況下,能夠對進入的惡意通信流量進行分類以快速避免進一步檢測的網絡處理器會發揮極高的防止效率。由于安全需要,對 NP 的要求越來越高,這就為專門用于安全性目的的獨立 ASIC 設備推廣帶來了市場。
不過,長遠說來,我們應既充分利用模式匹配技術,又要結合采用 NP 中具備精細粒度的流量管理特性,這才是高效解決安全問題的合適方法,而不是依靠多個 ASIC 安全設備并讓每個設備專門去處理某種具體領域的安全威脅。
異常協議檢測
進行異常協議檢測時應遵循網絡通信會話的進程,識別各種異常情況。如果瀏覽器或文件傳輸協議 (FTP) 會話等應用嘗試打開與該應用協議無關的端口,那么我們就會制止該會話,并將其標記為“需要進一步檢查”。
此外,我們還需要對上述技術進行擴展,在數據庫中建立用法描述。如果有的會話與數據庫中規定的用法描述不匹配,那么 IDS 系統就會發出告警,或密切“監視”該會話,或強制終止該會話。
證實入侵的步驟
網絡上證實入侵的系統分為四個階段:檢測、預防、保護及薄弱環節檢測。專為模式匹配設計的語言,如用于監視簽名的環境模式識別語言(CPRL)以及杰爾系統的函數編程語言 (FPL) 等,均可提高掃描效率,從而幫助證實入侵是否發生。
盡管這些工作任務看起來繁重,但網絡處理器或路由器制造業并不必為確保網絡安全而給所有的網絡路由器添加大量計算功能。只要網絡上10% 的路由器能夠進行內容過濾,我們就可以靈活而熟練地將這些設備布置在恰當的位置上,從而確保檢查到通過網絡的所有數據包[9]。
總結
打擊電子犯罪常常要求高速度的模式匹配功能來檢測是否有非法簽名入侵網絡。此外,我們還應采用流量測量技術來監控流量模式的微妙變化,從而發現攻擊會話是否已經啟動,盡管事先并不了解相關攻擊模式。
我們采用成熟穩定的基于 ASIC 的 IDS 技術可實現上述功能,因為該技術既支持高速模式匹配,又支持精細粒度的流量管理以及統計數據收集功能。
綜上所述,網絡處理器在打擊電子犯罪領域發揮著重要作用,因為這些 ASIC設備經優化后能夠以精細粒度級性能快速進行模式處理操作、流量管理以及統計數據收集。
參考資料:
1. http://www.csoonline.com/read/090104/2004ecrimewatchsummary.pdf; 2.http://www.calit2.net/articles/article.php?id=630;
3.作者:F. Baboescu 與 G. Varghese,摘自《IEEE/ACM 網絡匯刊》“可擴展數據包分類”,2005 年 2 月第 1 版第 13 卷;
4.作者:S. Dharmapurikar 等,摘自 2003年 8 月版《高性能互連會議文集 (HotI)》44 至 51 頁部分“用并行 Bloom 過濾器進行深入的數據包檢查”,美國加利福尼亞州斯坦福;
5.作者:X.F. Wang 與 M.K. Reiter,摘自《2003 年 IEEE安全與隱私會議文集 (SP’03)》“用計算任務防止拒絕服務攻擊”;
6.作者:J. Xu 與 W. Lee,摘自《IEEE 計算機匯刊》“預防分布式服務攻擊,維持 Web 服務的可用性”,2003 年 2 月第 2 版,第 52 卷第 195 頁至 208 頁;
7.作者:F. Hao 與 M. Kodialam T.V. Lakshman,摘自《第 12 屆 IEEE網絡協議國際會議備忘錄 (ICNP’04)》“實時檢測隱藏的流量模式”;
8.作者:F. Hao 等,摘自《IEEE INFOCOM 2005》2080 頁至2090 頁部分的“通過計算重合情況用存儲器的方式快速高效地估算流量”;
9.作者:M. Kodialam、T.V.Lakshman 及 S. Sengupta,“用內容過濾節點配置網絡,實施網絡安全應用”。