Linux核心入侵檢測安全增強實現(上)(轉)

BSDLite發表於2007-08-16
Linux核心入侵檢測安全增強實現(上)(轉)[@more@]  在計算機制造業中,只要涉及到電腦保安性要求非常重要高的地方,總要提起入侵檢測和如何處理駭客的入侵。在這個方面的主要討論焦點是:在入侵者進行完成入侵後發現並記錄入侵,還不如在他們入侵之前就發現並阻止他們對系統的入侵。我們可以檢測系統每一個程式,這樣我們就可以在入侵者實行入侵攻擊的時候實現入侵的防禦,因為這樣就可以即時阻止惡意的系統命令的執行。實際上,最嚴重的破壞都是透過在被攻擊系統上執行的惡意系統呼叫帶來的。

  這篇文章提供了設計和實現這種對敏感的系統呼叫的監視功能。我們的目的主要是在類UNIX系統核心上透過截獲系統呼叫來實現這種功能。這個系統的綜合功能可以嵌入到核心中的系統呼叫程式碼,這樣在系統呼叫被引用的時候就可以檢查系統呼叫是否符合訪問控制資料庫所定義的規則。

  這裡實現的方法是透過一個簡單的方法來截獲系統呼叫和他們的引數值。這樣做不用改變核心已有的資料結構和演算法。在對所有對程式程式的修正和改變後,他們還可以繼續穩定的執行,不用改變原始碼和重新編譯核心。

  這裡還提供了一個完整的能夠檢測和阻止緩衝區溢位攻擊的程式碼,這段程式碼可以作為一套Linux的作業系統的核心原始碼補丁。

  一.介紹

  現在大家已經公認了,世界上沒有絕對的方法或絕對安全的系統來阻止駭客的入侵:沒有漏洞的軟體對我們來說還是一個夢想。即使是很流行的程式或是作業系統一樣會包含很都可以被入侵者利用的漏洞。

  許多軟體包的行為都是和其他作業系統的元件(函式庫或是核心)相互作用的。 由於這個原因,所以入侵檢測和如何處理入侵行為在計算機工業裡一直在廣泛的討論和研究。 很多現有的入侵檢測的技術都是基於一些對審計和日誌檔案的分析。主要思想是搜尋整個系統的檔案和參考列表來發現畸形的,不期望的系統配置的改變。(如,有一個新的使用者的使用者ID是0)。另外一種方法就是週期性的執行一個程式來做系統檔案的屬性和參考列表的比較。這些過程主要是來對付Trojan木馬的。這樣的程式是看起來對系統不是很危險,但是可以讓入侵者得到控制整個系統所需的許可權。

  這樣程式的好處是不用進入核心部分。如,他們不用進行對系統命令的修改。但是,他們也不能對入侵進行即時的防範,因為,大多數情況下,這些結果都是在入侵者攻擊以後才生成的。 因為所有對系統的破壞性攻擊都是透過一些敏感的系統呼叫來實現的。所以,即時的入侵檢測透過監視每一個系統呼叫就可以保護你的系統不受攻擊者破壞。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-962253/,如需轉載,請註明出處,否則將追究法律責任。

相關文章