兩個linux核心rootkit–導語

來源:互聯網
上載者:User

曾經說過,linux由於其內秉的檔案刪除機制導致一旦發現有惡意代碼很容易被清除掉,即使發現核心本身被感染也是很容易被清除掉,但是這並不能表示linux就是絕對安全的,這僅僅說明linux的補救措施很有效,因此如果想黑掉linux系統,那麼首要的不是想如何讓使用者刪不掉惡意程式,而是儘可能嚴謹的隱藏惡意程式,隱藏的含義有必要澄清一下。

考慮一下使用者或者管理員通過什麼來探知系統的行為,無非就是一些當前的系統快照以及以往的記錄,快照我們可以舉出很多例子,比如進程,連接埠,檔案,使用者等等,而記錄則可以被理解為日誌資訊,除了快照和記錄之外,還有一些軟性的因素可以協助使用者或者管理員探知系統,這就是效能檢測,如果無緣無故發現效能變差了但是又沒有檢查出額外進程或者連接埠,那麼很可能系統被攻擊了,因此只要我們將惡意程式相關的進程,連接埠,檔案以及檔案內容都隱藏,將與惡意程式有關的日誌資訊都屏蔽掉,並且惡意程式運行期間不會太影響效能,那麼攻擊就算成功了,而且很有效。雖然這樣的攻擊的確很酷,但是這並不能說linux系統本身有漏洞或者說linux本身不安全,linux系統的安全責任在兩方面,一個是系統,另一個是使用系統的人,從系統攻擊linux幾乎是很難成功的,需要複雜的漏洞掃描過程,那麼在黑掉系統之前必須先黑掉使用系統的人,只要有了root許可權在linux中是什麼都可以做的,我在前面的文章中也提到過,不要覺得寫一個核心木馬就很酷,那僅僅說明你有c語言基本的變成知識並且你擁有該系統的root許可權,如果你能以一個普通使用者的身份通過漏洞進入核心,那麼你才是高手。

黑掉使用系統的人不是技術範疇的事,因此不討論,現在假設已經獲得了root許可權,我們考慮一下具體要做哪些工作,首先最基本的,要隱藏進程而相關的檔案,載入入核心的模組以及使用的連接埠,其次要屏蔽日誌資訊,具體來說就是攔截syslogd的行為,只要是惡意程式寫的日誌,那麼過濾掉,utmp和wtmp也是需要關注的,因為who命令通過讀取上述檔案就可以知道登入記錄,如果惡意程式涉及登入的話,那麼屏蔽掉,幸運的是日誌行為最後都落實為寫檔案,在linux中均由檔案系統來負責,參照rootkit隱藏檔案的方式,我們只需要攔截檔案系統的系統調用就可以了。說到這裡,攔截方式有兩種,一種是直接攔截系統調用本身,另一種是攔截檔案系統的回呼函數,也就是file_operations中的函數,前者很容易被發現而後者卻很隱蔽,畢竟前者屬於機制性的東西,一般比較固定,反黑軟體一般都可以查的出來,而後者屬於具體檔案系統的策略,不是那麼固定,因此反黑軟體很難入手,兩種方式也代表了兩種風格,難易程度相當,不過我還是覺得攔截檔案系統回呼函數來得更容易些。好了,接下來的兩篇文章將闡釋兩個著名又很簡單的rootkit。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.