IDS(入侵檢測)要“退休”了嗎?

餘二五發表於2017-11-15
一、問題的提出
資訊保安產品從老三樣:防火牆、防病毒、入侵檢測IDS,發展到目前的資訊加密、邊界防護、入侵監控、行為審計(認證、授權、審計)等多維安全體系的建設,可謂技術眾多、方案林立,有人俗稱為新三樣:UTMIDS、審計。新老三樣都離不開IDS,說明了一個問題,安全是入侵與防護的對抗,不僅是技術上的對抗,而且是人與人的對抗,攻擊者與防護者的對抗,所以沒有一種技術可以一勞永逸,對於未知的攻擊進行防範,最好的方式就是實時的監控,隨時瞭解你網路上發生了什麼,波及到哪裡了,是爭取最小損失的不二法則,所以IDS是所有安全體系中不可缺少的,廣義地說:是網路監控平臺的建設。
然而最近一些時間,人們對IDS有些看法,有下面幾個方面的問題:
1、“海量事件”的不可處理性
安全的最大特點百密一疏,所以“寧可冤枉一千,不使一人漏網”,不僅是IDS的安全事件多,很多系統的安全日誌都是海量的,若沒有自動的處理技術與機制,靠人來處理是不現實的。既然只有到發現問題後,才去分析那些告警資訊,從“海洋”中尋找有價值的蛛絲馬跡,這種方式對於使用者來說的確不是值得推薦的。
並且大多數廠家產品的安全事件描述都很“專業”,非專業人員不容易理解,IDS的易用性一直是困擾IDS的老大難問題。IDS廠家用“產品+服務”的方式彌補易用性問題,雖然把客戶綁得更緊了,卻極大地影響了IDS的推廣。既然IDS是安全廠商的“專用”工具,客戶對它的感覺更加是“敬而遠之”。
2、工作原理上的危機
IDS檢測攻擊行為主要有三種技術:一是行為的模式匹配;二是對異常的分析,有的說法,異常分析也屬於模式匹配,因為正常模式生成後,識別的方式也是模式的匹配或門限的突破比較;三是特徵識別,通過攻擊者的特徵識別攻擊,比如SQL注入的“1=1的條件,Shellcode中特殊程式碼等等。
特徵識別技術,需要對攻擊者的特徵進行檢測,有些象人的指紋特徵一樣,但有意思的是人的指紋一般不會改變,而攻擊的“指紋”有很大的“變異性“。這種特點也是軟體的一種“屬性”,是通訊協議的一些標識或程式設計人員的“偏好”,若攻擊者要躲避你的檢測,特徵就很容易改變,不僅每個軟體的特徵不同,而且同一個軟體的不同版本的特徵也不一定相同。更為麻煩的是:每個新的軟體出現、新的攻擊技術出現,其特徵都需要安全公司的專家們進行專業的探測,而不同的安全公司給出的特徵也不一樣,所以對該攻擊的識別的成功率是有很大差異的。
因此,在軟體呈幾何級數增長的今天,對於龐大的攻擊特徵庫維護,本身就是巨大的負擔。這一點與盛行了多年的防病毒技術是一樣,對計算機病毒的識別大多采用特徵識別方式,而目前的病毒庫升級已經從周縮短到天,甚至是小時級別。所以計算機界有一種說法:防病毒的廠家很快要退出市場,讓位於高可靠的作業系統或主動防禦方式的安全廠家,防病毒軟體就要消亡了,大家熟悉的防病毒產品好象該退休了。
這種危機同樣影響到了IDS,目前的攻擊軟體都是自動生成的,每分鐘有上萬種組合,你的攻擊特徵庫升級得過來嗎,很多人開始懷疑IDS產品的未來前途,IDS產品是都也該到了退休的年齡了?
3IPS裝置帶來的IDS理解誤區
IDS裝置的作用是監測與告警,由於是並聯裝置,所以不直接“動作”。IPS(入侵防護系統)把檢測入侵的技術用在閘道器上,發現攻擊“就地正法”,所以很多人誤認為,IPS可以替代IDS
其實IPS是串聯裝置,為了不影響網路的效率,不可能檢測大量的特徵,也就是說,IPS識別的攻擊只能是目前“流行的”部分攻擊;至於行為匹配,需要大量的快取來分析資料,千兆的流量對於閘道器裝置要實時處理是有一定效能要求的,產品價格就自然高起來了。因此IPS主要採用特徵類匹配,這樣速度快,並且是選擇一些常見攻擊的特徵庫,減少特徵庫是適應硬體的限制。若特徵識別技術的黃昏將要到來,那麼其對IDS的影響,應該遠不如對IPS的影響。目前IPS正在“熱推”,好象不是黃昏前的輝煌吧。
從威脅程度角度講,造成破壞大的並不一定是“流行”的攻擊方式,既然是攻擊,往往選擇大家意想不到的地方入侵,就象是選擇工具,最新的不一定就是能得手的。所以不遍歷整個攻擊庫的檢測,肯定是不能說就安全的。
 
二、什麼是海因裡希安全法則
1941年美國的安全工程師海因裡西對55萬件機械事故進行統計,其中死亡、重傷事故1666件,輕傷48334件,其餘則為無傷害事故。從而得出一個重要結論,即在機械事故中,死亡或重傷、輕傷和無傷害事故的比例為129300,國際上把這一法則叫事故法則。把這一法則推廣到安全管理領域中就是:每發生330個事件告警中,有300件為疑似,29件就可能是真實的攻擊,而就會有1次攻擊給你的系統帶來真正的威脅或者造成破壞
    
這個法則是對於不同的行業,比例關係不一定完全相同,但這個統計規律說明了海量安全事件中,偶然性與必然性的關係。而要防止重大事故的發生必須減少和消除無傷害事故,重視事故的苗頭和未遂事故,否則終會釀成大禍。其中有一個例項:某機械師企圖用手把皮帶掛到正在旋的皮帶輪上,因未使用撥皮帶的杆,且站在搖晃的梯板上,又穿了一件寬大長袖的工作服,結果被皮帶輪絞入碾死。事故調查結果表明,他這種上皮帶的方法使用已有數年之久。查閱四年病志(急救上藥記錄),發現他有33次手臂擦傷後治療處理記錄,他手下工人均佩服他手段高明,結果還是導致死亡。這一事例說明,重惡性事故有一定的偶然性,但不安全因素在事故發生之前已暴露過許多次,如果在事故發生之前,抓住時機,及時消除不安全因素,許多重大傷亡事故是完全可以避免的。 
       
海因裡西法則的另一個名字是 “129300法則;也可以是“300291法則。
 
三、從海因裡西法則看待IDS技術危機
海因裡西法則不併說明IDS的海量事件一定是這個比值,但他說明了海量預警與災難事件的關係。從這個角度說,IDS的海量事件是有一定依據的,我們的任務不是不報海量事件,而是找到一種方法,根據事件的威脅程度驅動不同的“動作”,也就是說真正抓住“330”個告警中的那個具有重大威脅的事件。
如何表達使用者網路受到的威脅?如何把“專業”安全人員處理海量事件的技術,變成“紅綠燈”一樣的簡單告警(紅綠燈給人的動作要求是確定的,紅燈停止、綠燈行使),並明確傳遞給使用者?IDS產品的易用性是其生命週期中是否有轉機的關鍵。
海因裡西法則給了我們一個啟示,就是很多非確定性的報告多到一定的數量,量變有可能就引起質變,可能是攻擊的事件。如短時間內大量地建立連線,可能是業務的突發,也可能是DOS攻擊;Ping命令的大量出現,可能是攻擊性的掃描,也可能網路管理員的測試
所以,海量事件的產生恰恰是網路威脅的存在,是網路管理者應該注意的,改變一下預警的條件與方式就可以把海量事件帶來的“煩惱”轉變為安全事件的真正分析。另外,隨著IDS的大規模部署,收集的資訊多了,多點的判斷相互印證,海量事件的數量也可以大幅度縮減。
至於特徵識別的困惑,應該是IDS發展中應該關注的。IDS是旁路裝置,有充足的時間與空間做模式匹配與狀態跟蹤,若對使用者的行為都能深度匹配、通訊的狀態都能完全跟蹤,判定攻擊行為的準確性將大大提高,確定攻擊者來源的方便多了。特徵識別的使用也可以大大減少,甚至完全留給IPS去使用,因為特徵識別技術適合在快速封堵中使用。
特徵識別實際上是在邊界上查驗身份證,而入侵攻擊是一個過程,僅靠大門處的第一印象是不容易判斷好壞人的。目前大量使用特徵識別的原因是因為很多行為做不到深度匹配與跟蹤,才用識別來者身份的方法,初步給一個好壞的分類。因為即使你發現了是Shellcode在傳輸,是學習者相互交流,而不是向你的系統中注入,都不應判定為是安全事件。
同樣是致命武器,在好人手裡是安全的保障,在壞人手裡,是危險的武器
本文轉自 zhaisj 51CTO部落格,原文連結:http://blog.51cto.com/zhaisj/88305,如需轉載請自行聯絡原作者


相關文章