溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

unix下的 rootkit

發布時間:2020-03-10 09:33:19 來源:網絡 閱讀:1609 作者:mft809849218 欄目:系統運維
傳統的Rootkit是一種比普通***后門更為陰險的***后門。它主要通過替換系統文件來達到目的,這樣就會更加隱蔽,使檢測變得比較困難。傳統的 Rootkit主要針對Unix平臺,例如Linux、AIX、 SunOs等操作系統,有些Rootkits可以通過替換DLL文件或更改系統來***Windows平臺。Rootkit并不能讓你直接獲得權限,相反它 是在你通過各種方法獲得權限后才能使用的一種保護權限的措施,在我們獲取系統根權限(根權限即root權限,是Unix系統的最高權限)以后, Rootkits提供了一套工具用來建立后門和隱藏行跡,從而讓***者保住權限。
傳統Rootkit對Unix的***
RootKits是如何實現后門的呢?為了理解 Rootkits后門,有必要先了解一下Unix的基本工作流程,當我們訪問Unix時(不管是本地還是遠程登錄),/bin/login程序都會運行, 系統將通過/bin/login來收集并核對用戶的帳號和密碼。Rootkits使用一個帶有根權限后門密碼的/bin/login來替換系統的 /bin/login,這樣***者輸入根權限后門的密碼,就能進入系統。就算管理員更改了原來的系統密碼或者把密碼清空。我們仍能夠使用后門密碼以根用戶 身份登錄。在攻入Unix系統后,***者通常會進行一系列的***動作,如安裝嗅探器收集重要數據,而Unix中也會有些系統文件會監視這些動作,比如 ifconfig等,Rootkit當然不會束手就擒,它會同樣替換一下這些系統文件,通常被Rootkit替換的系統程序有login, ifconfig,du,find,ls,netstart,ps等。由于篇幅問題,這些系統文件的功能就不一一羅列,有興趣的讀者可以自己去查找,現在 Rootkit的工具很多,里面基本都是包含一些處理過的系統文件來代替原來的系統文件的,像tOmkit等一些Rootkit就是比較優秀的了。

防御辦法:Rootkit如此可怕,得好好防它才行,實際上,最有效的防御方法是定期對重要系統文件的完整性進行核查,這類的工具很多,像 Tripwire就是一個非常不錯的文件完整性檢查工具。一但發現遭受到 Rootkit***,必須完全重裝所有的系統文件、部件和程序,以確保安全性。
寫到這里,戰爭似乎結束了,然而更可怕的Rootkit還沒登場,那就是內核級Rootkit。在大多數操作系統中(各種Unix和Windows),內 核是操作系統最基本的部件,它控制著對網絡設備、進程、系統內存、磁盤等的訪問。例如當你打開一個文件時,打開文件的請求被發送到內核,內核負責從磁盤得 到文件的比特位并運行你的文件瀏覽程序。內核級 Rootkit使***者獲得對系統底層的完全控制權。***者可以修改你的內核,大多數內核級Rootkit都能進行執行重定向,即截獲運行某一程序的命 令,將其重定向到***者所選中的程序并運行此程序。也就是說用戶或管理員要運行程序A,被修改過的內核假裝執行A,實際卻執行了程序B。
內核級Rootkit對Unix的***
和傳統的Rootkit不同,內核級Rootkit***時 Unix的bin/login并未被修改,但所有執行/bin/login的請求(當登錄系統時將產生)都被重定向到***者制作的隱藏文件 /bin/backdoorlogin,這樣當系統管理員使用檢測傳統級別的Rootkit的方法(比如用tripwire之類的軟件檢測文件的完整性) 就行不通了,因為/bin/login并沒有被改變。同樣的道理,***者對其他的系統程序也進行重定,這樣你的操作實際就是按照***者的意愿執行了。
內核級Rootkit不僅會進行“執行重定向”設置,還有很多支持文件隱蔽。傳統的Rootkit是通過替換ls程序來實現文件的隱藏,而內核級的 Rootkit則是通過對內核的修改來對ls程序欺騙,更加的陰險隱蔽。另外內核級的Rootkit還能對進程和網絡進行隱藏,用戶將得不到真實的系統情 況報告。
實現思路:根據系統的類型,***者有不同的方法來對內核進行修改,在N種Unix系統上修改內核最簡單的方法就是利用系統本身的加載的內核模塊(LKM) 的功能,因此大多數的內核級Rootkit通過利用LKM動態地將內核更新來提供新功能,新添加的模塊擴展了內核,同時對內核和其他使用內核的所有東西有 了完全訪問權。
因此,許多內核級Rootkit都通過LKM來實現。安裝通過LKM實現的內核級Rootkit十分簡單。例如,在Linux上安裝Knark內核級 Rootkit只需具有根權限的***者輸入命令:insmod knark.o就行了,模塊被安裝后就等著我們輸入命令了。更妙的是整個過程不需要重啟。通過LKM實現的Rootkit在Unix上十分流行。我們也常 常會通過給windows平臺打LKM補丁的方法***windows。
內核級Rootkit實例
現在有大量的內核級Rootkit可用,就選幾種比較強大的來跟大家討論一下。
一、linux上的內核級Rootkit:Knark
Knark具有各種標準的內核級Rootkit功能,包括執行重定向,文件隱藏,進程隱藏和網絡隱藏。另外,還有不少比較過癮的功能,如:
1、遠程執行:我們可以通過網絡向運行Knark的機器發送一條命令,源地址是假造的,命令被發往UDP端口53,使之表面上看起來像是DNS流量。我們 就可以利用這個功能來升級Knark,刪除系統文件或任何我們想做的事。
2、任務***:當某一進程在系統上運行時,它總是具有與 UID和有效的UID(EUID)相關的權限。另外進程還具有與文件系統UID(FSUID)相關的文件及目錄訪問權。Knark的任務***能力可實時地 將進程UID,EUID和FSUID改變。進程在不停止運動的情況下突然具有了新的權限。
3、隱藏混雜模式:同一般的RootKit一樣,***者也會在受害者機器上運行嗅探器。我們可以用文件隱藏和進程隱藏將嗅探器隱藏起來。然而,以太網卡會 被設成混雜模式,管理員可以檢查到這一點Knark將內核進行了修改,使之隱瞞網卡的混合模式,這將使嗅探變得更加隱秘。
4、實時進程隱藏:Knark可以將一個正在運行的進程隱藏起來。通過發送信號31給一個進程,此進程將消失,但仍在運行。命令kill-31 process_id將阻止內核匯報任何有關此進程的信息。進程在運行時,ps和lsof命令的使用都不能顯示此進程。
5、內核模塊隱藏:Linux中的lsmod命令可以列出當前在機器上安裝的LKM,我們自然不想讓管理員看到Knark模塊,因此Knark包含了一個 單獨的模塊modhide,modhide將Knark和自己隱藏了起來。這樣,當我們用Knark***一個系統時,我們首先為Knark.o做一個 insmod,然后為modhide.o做一個insmod。這樣不管誰運行lsmod命令,這些模塊都不會被發現。
二、另一個Linux上的內核級Rootkit:Adore
同Knark一樣,Adore也是一個針對Linux的LKM RootKit,他包含了標準的內核級Rootkit功能,如文件隱藏,進程隱藏,網絡隱藏和內核模塊隱藏。我們只所以討論Adore,是因為他還有一個 非常強大的功能:內置的根權限后門。
Adore的根權限后門可以讓我們連接到系統上并獲得根權限的命令外殼,此功能十分直接了當 ,Adore將此功能巧妙的包含在內核模塊中了。這一招十分難破,因為管理員看不到任何文件、進程、偵聽網絡端口的跡象。
防御辦法:防御內核級的Rootkit的根本辦法是不要讓***者得到你的機器的系統的根本權限(Unix里的root和windows里的admin), 不過這看起來像廢話:),目前對內核級的Rootkit還沒有絕對的防御體系。
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女