Rootkit 一詞已歷十餘年,意指一組讓攻擊者持久、隱蔽保持 root 最高權限存取的工具套件。其核心在於「難以偵測」:隱藏檔案、目錄、進程、網路連線,甚至竊聽網路封包。結合遠端存取與竊聽功能,Rootkit 能對系統安全造成毀滅性打擊。
取得主機控制權最直接方式是密碼猜測,但登入限制使其效果有限。進階攻擊者利用服務漏洞(Sun 空窗期)植入惡意程式,並將工具打包散播,形成流行的 Rootkit 套件。
以惡意程式取代系統合法執行檔,提供後門並掩蓋蹤跡。常見被替換工具:
透過可載入核心模組(LKM)操作核心,繞過應用層檢查,極難發現。雖多針對 Linux,但可移植至 Solaris 等支援 LKM 系統。一旦安裝,系統徹底失陷,管理員甚至無法發現異常。
運作手法包括:
sys_getdents() 隱藏 /proc 中進程記錄。/proc/net/tcp、/proc/net/udp 隱藏網路連線。EXPORT_NO_SYMBOLS 隱藏模組符號。sys_settimeofday() 透過特殊參數傳遞指令。sys_execve() 替換執行檔行為而不動檔案本體。知名核心層 Rootkit:Linux knark(含 hidef、unhidef、nethide、taskhack、rexec、rootme)、Solaris LKM 套件。