Rootkit是指其主要功能為:隐藏其他程序進程的軟件,可能是一個或一個以上的軟件組合;廣義而言,Rootkit也可視為一項技術。在今天,Rootkit一詞更多地是指被作為驅動程序,加載到操作系統内核中的惡意軟件。因為其代碼運行在特權模式之下,從而能造成意料之外的危險。最早Rootkit用于善意用途,但後來Rootkit也被黑客用在入侵和攻擊他人的電腦系統上,電腦病毒、間諜軟件等也常使用Rootkit來隐藏蹤迹,因此Rootkit已被大多數的殺毒軟件歸類為具危害性的惡意軟件。Linux、Windows、Mac OS等操作系統都有機會成為Rootkit的受害目标。在現代操作系統中,應用程序不能直接訪問硬件,而是通過調用操作系統提供的接口來使用硬件,操作系統依賴内核空間來管理和調度這些應用。内核空間由四大部分組成,分别是:進程管理(負責分配Cpu時間)、文件訪問(把設備調配成文件系統,并提供一個一緻的接口供上層程序調用)、安全控制(負責強制規定各個進程的具體的權限和單獨的内存範圍,避免各進程之間發生沖突)和内存管理(負責進程運行時對内存資源的分配、使用、釋放和回收)。内核是一種數據結構,Rootkit技術通過修改這些數據結構來隐藏其它程序的進程、文件、網絡通訊和其它相關信息(比如注冊表和可能因修改而産生的系統日志等)。例如,通過修改操作系統的EPROCESS鍊表結構可以達到隐藏進程的效果,挂鈎服務調用表可以隐藏文件和目錄,挂鈎中斷描述符表則可以監聽鍵盤擊鍵等等。Rootkit至今仍然是一個發展中的技術領域。
好多人有一個誤解,他們認為Rootkit是用作獲得系統root訪問權限的工具。實際上,Rootkit是攻擊者用來隐藏自己的蹤迹和保留root訪問權限的工具。通常,攻擊者通過遠程攻擊獲得root訪問權限,或者首先密碼猜測或者密碼強制破譯的方式獲得系統的訪問權限。進入系統後,如果他還沒有獲得root權限,再通過某些安全漏洞獲得系統的root權限。接着,攻擊者會在侵入的主機中安裝Rootkit,然後他将經常通過Rootkit的後門檢查系統是否有其他的用戶登錄,如果隻有自己,攻擊者就開始着手清理日志中的有關信息。通過Rootkit的嗅探器獲得其它系統的用戶和密碼之後,攻擊者就會利用這些信息侵入其它的系統。
以linux系統為例,攻擊者使用Rootkit中的相關程序替代系統原來的ps、ls、netstat和df等程序,使系統管理員無法通過這些工具發現自己的蹤迹。接着使用日志清理工具清理系統日志,消除自己的蹤迹。然後,攻擊者會經常地通過安裝的後門進入系統查看嗅探器的日志,以發起其它的攻擊。如果攻擊者能夠正确地安裝Rootkit并合理地清理了日志文件,系統管理員就會很難察覺系統已經被侵入,直到某一天其它系統的管理員和他聯系或者嗅探器的日志把磁盤全部填滿,他才會察覺已經大禍臨頭了。但是,大多數攻擊者在清理系統日志時不是非常小心或者幹脆把系統日志全部删除了事,警覺的系統管理員可以根據這些異常情況判斷出系統被侵入。不過,在系統恢複和清理過程中,大多數常用的命令例如ps、df和ls已經不可信了。
Rootkit 是一種特殊類型的malware(惡意軟件)。Rootkit 之所以特殊是因為您不知道它們在做什麼事情。Rootkit 基本上是無法檢測到的,而且幾乎不可能删除它們。雖然檢測工具在不斷增多,但是惡意軟件的開發者也在不斷尋找新的途徑來掩蓋他們的蹤迹。Rootkit 的目的在于隐藏自己以及其他軟件不被發現。它可以通過阻止用戶識别和删除攻擊者的軟件來達到這個目的。Rootkit 幾乎可以隐藏任何軟件,包括文件服務器、鍵盤記錄器、Botnet 和 Remailer。許多 Rootkit 甚至可以隐藏大型的文件集合并允許攻擊者在您的計算機上保存許多文件,而您無法看到這些文件。Rootkit 本身不會像病毒或蠕蟲那樣影響計算機的運行。攻擊者可以找出目标系統上的現有漏洞。漏洞可能包括:開放的網絡端口、未打補丁的系統或者具有脆弱的管理員密碼的系統。在獲得存在漏洞的系統的訪問權限之後,攻擊者便可手動安裝一個 Rootkit。這種類型的偷偷摸摸的攻擊通常不會觸發自動執行的網絡安全控制功能,例如入侵檢測系統。
防止 Rootkit 進入企業系統的主要安全要素包括:病毒掃描程序、定期更新軟件、在主機和網絡上安裝防火牆,以及強密碼策略等。如需深入了解如何防範Rootkit,請聯系藍盟IT外包獲取免費的咨詢。
文/上海藍盟 IT外包專家
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!