"xyzzy=xyzzy."也是同樣原理。這樣發(fā)展下去會是怎樣的呢?

不錯,使用靜態(tài)簽名定義–但由于你必須寫下簽名字符串的無限長數字來識別每次攻擊,因此像目前許多常用入侵檢測系統(tǒng)產品使用的方法每次都是失效的。那些"n=n"攻擊是SQL注入式攻擊中最瑣碎的。

問題之一是所有以網絡為基礎的入侵檢測工具都缺乏上下文來有效的判斷HTTP請求是否包含惡意輸入。

接下來在入侵檢測系統(tǒng)領域還有一個隱藏的黑暗面。你知道我們安全人員是如何告訴軟件使用者使用SSL加密來保證敏感數據在網絡上傳遞時的安全的嗎?確實,對網絡流量進行加密(這是個好辦法)就相當于給監(jiān)控用的攝像頭加上有效的鏡頭蓋。入侵檢測系統(tǒng)產品無法看到SSL加密數據包內部的內容。

通過對我們的敏感數據進行SSL加密,我們可以收回觀測帶有惡意有效負荷跡象數據的入侵檢測系統(tǒng)傳感器。即使他們可以勝任偵測SQL注入式攻擊的職責,但SSL加密會導致他們的工作無法完成。

因此這就意味著我們要停止使用入侵檢測系統(tǒng)和SSL馬?當然不是。這只是說明我們必須清醒的意識到我們所用技術的局限性。

在很多時候入侵檢測系統(tǒng)能十分有效的進行偵測。已知病毒,蠕蟲,木馬等的爆發(fā)會經常興風作浪來沖擊使用入侵檢測系統(tǒng)進行監(jiān)控的網絡。

入侵檢測系統(tǒng)工具甚至能偵測到許多新型的攻擊。舉例來說,僵尸網絡和其他木馬經常會在被感染計算機上安裝網絡服務。當攻擊者和這些服務進行聯(lián)系時,桌面系統(tǒng)計算機從網絡層面上來說就更像是一臺服務器。多數現有的入侵檢測工具在之前已知的木馬病毒發(fā)作時會注意到這些網絡活動。

但是不要因此而麻痹,以為入侵檢測系統(tǒng)產品在偵測所有的網絡應用軟件攻擊上都是有效的。采取實際應用軟件安全措施的唯一地方就是應用軟件本身的內部。這種安全是無法購買得來的。

同樣,我們也不能放棄SSL。SSL依然是目前可用的最普遍也最廣為認可的網絡加密技術。實際上我們必須采用SSL加密技術來保護傳輸過程中的敏感數據。

這就意味著我們的入侵檢測產品注定無法刺穿SSL的屏障嗎?在很多甚至是多數情況下,確實如此。目前在企業(yè)級體系架構中,我們可以將SSL流程卸載到前端處理器,將入侵檢測系統(tǒng)放置在這些處理器的后面。但這是很多小型企業(yè)所力不能及的。

我們也在考慮托管在應用軟件服務器上的入侵檢測系統(tǒng),但是需要警告和重申的是許多入侵檢測系統(tǒng)產品在偵測應用軟件層攻擊上是比較薄弱的。在應用軟件內部,還沒有替代應用軟件層防御的辦法,包括入侵檢測在內亦是如此。

我們也不能忽略另一個使用SSL的巨大優(yōu)勢–那就是驗證。在多數應用軟件中,只有服務器對客戶的驗證,或者附加值服務的驗證。在除了服務器證書外還使用客戶端證書的領域,SSL加密能我們提供非常強大的相互驗證。

盡管如此,沒有一項技術是完美的。我們也不會對此大驚小怪對嗎?目前現有的入侵檢測技術是有用的工具,但是我們不能事事依靠這項技術。應用軟件攻擊是他們的弱點之一。讓我們接受這個事實,將注意力轉移到研發(fā)更加安全的應用軟件上去吧。

分享到

yajing

相關推薦