作者:深信服千里目安全實驗室
相關閱讀:
1、【Rootkit 系列研究】序章:懸頂的達摩克利斯之劍
2、【Rootkit 系列研究】Windows平臺的高隱匿、高持久化威脅
3、【Rootkit 系列研究】Linux平臺的高隱匿、高持久化威脅
4、【Rootkit 系列研究】Rootkit檢測技術發展現狀
5、【Rootkit 系列研究】Windows平臺的高隱匿、高持久化威脅(二)
序言
APT,全稱Advanced Persistent Threat,又名高級持續性威脅,往往有地區或政治背景,以情報搜集、破壞、或經濟利益為目的,攻擊環節可能使用各類社工、打點和內網滲透以及0day漏洞利用,作為一種非對稱的攻擊手段,往往能為攻擊組織背后的政治或經濟實體帶來意想不到的地緣、情報、經濟甚至軍事利益或戰術優勢。
APT攻擊的檢測、溯源與反制,往往代表了一個國家、一個組織最高級的網絡安全實戰能力。而如何應對APT攻擊,減少所在組織或國家的情報損失,并提升網絡安全優勢,就成為頭部網絡安全企業必須考慮的問題。
從西方APT組織的攻擊歷史及已經泄露的網絡武器看,高隱藏、高持久化(Low&Slow)是其關鍵特征,而 Rootkit 則是達成此目的的重要技術之一。
Rootkit 系列文章將圍繞 Rootkit 的技術棧和運用場景,從攻防兩個視角對其危害性和檢測思路展開分析。
《序章:懸頂的達摩克利斯之劍》將著重介紹 Rootkit 技術發展歷程、Rootkit背后的影子以及 Rootkit 檢測基本思想,開啟 Rootkit 系列篇章。
1.平靜中暗藏危機
Rootkit 不是最常見的惡意軟件類型。
根據 Bitdefender White Paper Rootkit CREAT3432[1]報告所述,Rootkit 占檢測到的惡意軟件總數不到 1%。
由于 Rootkit 開發的復雜性,Rootkit 并不經常使用。盡管操作系統中引入了針對 Rootkit 保護機制,但 Rootkit 仍然可以長期隱藏設備上,進行惡意活動。
因此 Rootkit 被業內公認是最難檢測的隱藏手段。
Rootkit 常常用于高質量的APT攻擊。APT攻擊具有較強的持續性特點,這需要建立在不被發現的基礎之上,APT組織可以通過 Rootkit 在目標網絡中潛伏幾個月甚至幾年之久,長期監控并竊取龐大的情報數據。
Rootkit 如同高懸在我們頭頂的達摩克利斯之劍,平靜祥和的背后,卻是無盡的危險與殺機。
2.何為Rootkit
Rootkit 是一種特殊的程序(或一組程序),通常與木馬、后門等其他惡意程序結合使用。
Rootkit 主要任務是隱藏并長期駐留在感染機器上的從事各類惡意活動,達到高隱藏高持久化目的。
Rootkit 一般具有多種功能,例如:
獲得遠程訪問
Rootkit 提供對操作系統的遠程訪問權限并具備檢測規避能力。
竊取數據
大多數情況下,攻擊者使用 Rootkit 竊取數據。黑客以個人或公司為目標,獲取敏感個人信息數據,以進行相關黑產活動。APT組織針對特定目標,以從事間諜活動或金融犯罪活動。
各類隱藏功能
Rootkit 實現隱藏文件、進程、端口、網絡連接、驅動、內核模塊等功能,將自身和其他類型的惡意軟件隱藏在設備中,使刪除它們變得更加困難。
創建“永久“的 root 權限后門
一些 Rootkit 可以在設備中創建一個 root 權限的后門,攻擊者可以通過發送精心構造的數據包來觸發后門連接并控制設備。
隱私監控
使用 Rootkit,攻擊者可以攔截網絡流量、監控鍵盤擊鍵、控制用戶操作。
劫持或關閉安全程序
某些 Rootkit 可以將自己隱藏在設備的安全檢測程序中,或者將其完全關閉 ,從而難以檢測和刪除惡意軟件。
根據 Rootkit 運行時權限級別劃分分為:
(1)內核態Rootkit
內核態 Rootkit 具有與操作系統相同的權限,在內核級別運行,通常作為設備驅動程序或可加載模塊加載到目標設備中。
內核態 Rootkit 很難開發,因為源代碼中的任何錯誤都會影響目標系統的穩定性,這將是發現惡意程序的最直接表現。
(2)用戶態 Rootkit
用戶態 Rootkit 以與大多數應用程序具有相同的運行權限。它們可以攔截系統調用并替換 API 或劫持應用程序返回的值,以獲得對設備的控制。
用戶態 Rootkit 所需的前置知識和復雜度,與內核態Rootkit相比更簡單,更容易開發,因此常用于大范圍攻擊。
3.Rootkit 發展歷久彌新
90年代初期,Rootkit 用于攻擊 Unix 系統以獲得最大權限并以 root 用戶身份執行命令,因此得名。直到 1999 年,Greg Hoglund在Phrack上首次發表了專門為Windows 操作系統設計的 NTRootkit[2]。后來,也出現了可用于攻擊 macOS、Android 的 Rootkit。
Rootkit 技術由來已久,發展歷久彌新,呈現從簡單到復雜、高層向低層的演化趨勢。
無論是哪種平臺下的 Rootkit ,其技術演化的核心思想都是劫持。安全研究員圍繞著劫持對象和劫持方式,產生出了非常多的底層Rootkit技術。
不同平臺下的 Rootkit ,按照劫持對象和劫持技術復雜度的不同,可將 Rootkit 技術大致分為以下幾種。
在Windows平臺下:
-
劫持指令執行流程
-
直接修改內核對象
-
內存視圖偽裝
-
虛擬Rootkit
-
硬件Rootkit
在 Linux 平臺下:
-
直接替換系統命令二進制程序
-
修改LD_PRELOAD劫持共享庫
-
重定位目標文件注入
-
劫持VDSO
-
虛擬文件系統劫持
-
Kprobe
-
Netfillter Hook
-
篡改派遣例程劫持系統調用
-
設置函數蹦床劫持內核函數執行流程
-
創建新的命名空間
如圖 1所示,近二十年 Rootkit 演化發展時間軸(Rootkit開源或熱門實例)。

目前,技術是向更加底層的方向發展。然而,根據近十年已發現的 Rootkit 攻擊事件,使用用戶態Rootkit 卻是一個趨勢。例如,2010年以后,ZeroAccess Rootkit[3] 的開發人員已經轉向使用用戶態Rootkit。
近十年用戶態 Rootkit 使用趨勢上升可能由于以下幾個原因:
-
內核態 Rootkit 需要針對不同系統內核版本進行開發和調試,因此大多數攻擊者可能沒有足夠的技術能力,從而選擇更簡單的攻擊方式。
-
開發和調試 Rootkit 需要花費大量時間成本,大多數攻擊者希望低成本快速部署攻擊。
-
內核態 Rootkit 存在不穩定性,源代碼中的任何錯誤都可能導致操作系統BSOD或者Kernel Panic,這將直接暴露入侵行為。
-
幸存者偏差,用戶態 Rootkit 更適合大范圍的攻擊,由于攻擊范圍擴大,其相較于內核態 Rootkit執行性時的痕跡更容易被檢測,導致從結果上看,使用用戶態 Rootkit 呈現上升趨勢。
實際上,不僅是安全研究員研究對抗Rootkit,操作系統提供商也在積極與 Rootkit 作斗爭。例如,Windows 10 操作系統提供了一系列驅動程序檢測來對抗 Rootkit。
所謂道高一尺魔高一丈,攻擊者也在開發繞過 Rootkit 防御機制的技術。例如,新的Moriya Rootkit[4]已經提供了繞過驅動程序檢查和 PatchGuard 強制簽名的功能。
甚至攻擊者開始向硬件設備中注入 Rootkit 模塊。
Amnpardaz的惡意軟件分析團隊首次在 HP iLO設備中發現 Rootkit —— iLOBleed [5]。
HP iLO 設備帶有自己的處理器單元、存儲空間、RAM 和網卡,并且獨立于任何本地操作系統運行。
它們的主要作用是為系統管理員提供一種連接遠程系統的方法,即使系統處于關閉狀態下,也可以執行維護操作,例如更新固件、安裝安全更新或重新安裝系統等。
iLOBleed 向iLO設備固件中添加了一個名為Implant.ARM.iLOBleed.a的惡意模塊,并進行隱藏惡意活動和持久化操作。
攻擊者通過更改多個原始固件模塊方式,實現劫持 iLO 和服務器之間的消息交換通道,繞過固件正常更新過程,劫持管理 Web 界面以顯示無效的 iLO 軟件版本信息,雞翅服務器事件日志模塊以防止記錄惡意軟件的操作,修改 iLO 操作系統的多線程內核等功能,達到高隱藏目的。
攻擊者通過逆向分析提取 bootloader.bin、kernel.bin 和 ELF.bin 三個主要部分后,查找在引導加載程序和內核中執行簽名驗證操作的函數的地址,并將它們替換為 NOP 命令。最后,將修改后的文件組合在一起形成一個完整的 HP Image 文件,并作為新固件寫入 SPI 閃存,達到高持久化目的。
iLOBleed 在偽裝完成更新的同時,默默地阻止固件更新。它還提供對服務器硬件的訪問,定期執行數據銷毀操作。
Rootkit 技術在攻防兩端的持續對抗下,不斷發展。即使開發Rootkit需要對目標操作系統、逆向和編程有很高要求,其開發過程也是困難重重,但新的 Rootkit 還是會定期出現。
4.隱匿于Rootkit背后的影子
內核級別的Rootkit難以開發,那么誰還堅持使用它們?
答案很明確:即具有足夠技術和財力支持的戰略性組織,這些組織通常會不計成本地進行經濟犯罪、破壞基礎設施或竊取數據。
DirtyMoe 僵尸網絡[6]、H2Miner 組織[7]利用Rootkit進行持久化并隱藏挖礦模塊,掩蓋挖礦行為和其他惡意活動,將 Rootkit 技術直接用于經濟犯罪。
Rootkit 在攻擊中的使用最著名的事件莫過于 2010 年震網攻擊事件(Stuxnet),攻擊者使用 Stuxnet 秘密收集數據并將惡意文件文件下載到受感染機器。攻擊的主要目的是阻止伊朗核系統的發展并實際破壞其基礎設施。
由于Rootkit 相關開發的各種困難性與其應用場景,它們最常被 APT 組織使用。這一級別的攻擊者的主要動機是竊取數據和從事網絡間諜活動。
例如,攻擊者使用Flame Rootkit[8]跟蹤受害者的網絡流量、執行鍵盤記錄功能并截取屏幕截圖。
APT 組織Strider(也稱為 ProjectSauron,或 G0041),其主要目標是俄羅斯、比利時、伊朗、瑞典和盧旺達等政府。在對政府機構的攻擊中,使用了Remsec Rootkit[9],用于竊取加密密鑰、配置文件,并收集加密密鑰基礎設施服務器的 IP 地址。
Kaspersky研究人員發現了TunnelSnake行動[10],這是一起高級持續性威脅(APT)攻擊活動。TunnelSnake至少從 2018 年開始,利用Moriya Rootkit[11]有針對性的從事網絡間諜活動。目標包括東南亞和非洲的兩個外交組織。Moriya Rootkit 繞過Windows 系統驅動程序檢查和 PatchGuard 模塊的強制簽名驗證,為攻擊者提供遠程訪問權限、攔截網絡流量、下載和運行下攻擊階段的惡意代碼、隱藏向受感染主機發出的惡意命令。這導致攻擊者秘密控制了目標的網絡長達數月之久。
根據Positive Technologies研究[12]發現,最常見的目標是政府和研究機構,77%的Rootkit被攻擊者用于收集數據等間諜目的。
44%的攻擊針對政府部門,38%的攻擊針對科研單位。這些機構的數據對攻擊者往往具有重要價值。除此之外,電信、制造業、金融機構也是名列前茅。而56%的攻擊被犯罪分子用來針對個人,包括高級官員、外交官等。而在動機方面,31%是出于經濟利益,只有15%的攻擊,試圖利用受害者的基礎設施進行后續攻擊。
Rootkit將繼續被APT組織使用,這意味著它不再只是為了破壞數據和獲取經濟利益,而是為了隱藏復雜的有針對性的攻擊,這些攻擊可能會給組織帶來不可估量的損失。
綜上所述,Rootkit 是非常危險并且造成的損失難以評估,原因是:
-
Rootkit 為攻擊者提供系統權限;
-
Rootkit 使檢測惡意活動變得更加困難;
-
Rootkit 很難被發現和清除在某些情況下無法移除Rootkit,必須升級受感染的硬件;
-
Rootkit 竊取數據帶來的經濟損失難以評估;
-
目標設備存在內核態 Rootkit 通常表明,可能被一個準備充分的高水平組織發起的有針對性的攻擊,這意味著雖然攻擊未被檢測到,但目標的基礎設施可能處于攻擊者的完全控制之下并潛伏多年。
5.Rootkit的阿喀琉斯之踵
羅卡交換定律:“凡兩個物體接觸,必會產生轉移現象”。其定律原本用于犯罪現場調查中,行為人(犯罪嫌疑人)必然會帶走一些東西,亦會留下一些東西。即現場必會留下微量跡證。
羅卡交換定律衍生到計算機取證調查領域來說就是——當攻擊者試圖進行檢測規避時,也產生了其他可以被檢測的新特征。
所以高隱藏高持久化 Rootkit 并不是不可檢測的。
其 Rootkit 技術本身,就存在阿喀琉斯之踵——隱藏永遠是相對用戶而言。
攻擊者使用Rootkit最關鍵的地方在于實現其所需功能的前提條件下,盡可能隱藏自身,實現所需功能意味著 Rootkit 必須要與系統進行交互,這說明Rootkit 運行過程中的數據,必然是符合操作系統需求的數據結構。
技術不分好壞,只是看被誰利用,在攻擊方利用Rootkit謀壞事之際,防守方也可以利用 Rootkit 發現攻擊方的蛛絲馬跡。
發現 Rootkit 植入后的異常,往往實時地處置異常,不是第一考慮的要素,因為目標設備存在Rootkit ,通常表明可能正在被一個準備充分的高水平APT組織發起的有針對性的攻擊。一旦成為 APT 的目標,“他們”會繼續回來,達到最終目的。
此時,安全分析師介入調查并取證溯源是最為重要的,定位數據泄漏范圍以及攻擊者信息,保護重要業務數據不再泄漏。
懸頂的達摩克里斯之劍還未真正落下,在 Rootkit 領域的攻防對抗中,就是較量攻防雙方誰更了解操作系統,誰掌握的更深,誰就更占據優勢。相信未來 Rootkit 技術還會向更加深遠的領域不斷前進。
To be continued ……
參考鏈接
[2] http://phrack.org/issues/55/5.html
[3] https://nakedsecurity.sophos.com/2012/06/06/zeroaccess-Rootkit-usermode/
[4] https://securelist.com/operation-tunnelsnake-and-moriya-Rootkit/101831/
[5] https://threats.amnpardaz.com/en/2021/12/28/implant-arm-ilobleed-a/
[6] https://securityintelligence.com/news/dirtymoe-botnet-returns-undetectable-threat-profile/
[7] https://attack.mitre.org/software/S0143/
[8] https://securelist.com/faq-the-projectsauron-apt/75533/
[10] https://securelist.com/operation-tunnelsnake-and-moriya-Rootkit/101831/
[11] https://www.ptsecurity.com/ww-en/analytics/rootkits-evolution-and-detection-methods/
[12] https://www.ptsecurity.com/ww-en/analytics/Rootkits-evolution-and-detection-methods/
[13] https://mp.weixin.qq.com/s/Rp-QIaLp_6gitUor2IIcAQ
本文由 Seebug Paper 發布,如需轉載請注明來源。本文地址:http://www.bjnorthway.com/1867/
暫無評論