'Blue Pill' Prototype Creates 100% Undetectable Malware
http://www.eweek.com/article2/0,1895,1983037,00.asp
By Ryan Naraine
June 28, 2006
一個具有 rootkits 經驗的資安研究者,建立了一個可以運作的新技術原型,它有能力建立一個 "100% 無法被偵測的" 惡意軟體,甚至是在 Windows Vista x64 的系統上。
Joanna Rutkowska,她是位於新加坡的資訊安全公司 COSEINC 一位匿蹤惡意軟體研究者,表示這個藍藥丸(Blue Pill)的概念使用 AMD 的 SVM/Pacifica 虛擬化技術,來建立一個超細薄(ultra-thin)的 hypervisor(指可以在一台主機上同時執行數種作業系統,作業系統之間獨
立運行,http://en.wikipedia.org/wiki/Hypervisor),可以完全控制底下的作業系統。
Rutkowska 計畫要在 7 月 21 日於新加坡舉行的 SyScan 研討會,還有 8 月 3 日於拉斯維加斯進行的 Black Hat 簡報上討論並且展示一個可以在 Windows Vista x64 上運作的原型。
Black Hat 的展示將會與微軟預計要展示某些 Vista 當中關鍵的安全特色以及功能的日子是同一天。
Rutkowska 表示這次將展示一個以 "一般方式" 插入任意程式碼到 Vista Beta 2 核心(x64)核心的示範,不用依賴任何臭蟲的實作。
這項技術有效的繞過一項關鍵的反 rootkit 政策,那將在 Windows Vista 當中出現,其要求 kernel-mode 的軟體必須要有數位簽章,才能載入到基於 x64 的系統上。
虛擬機器 rootkit 的主意不全然是新的。在 Microsoft Research 的研究者以及密西根大學已經建立了基於 VM 的 rootkit 稱為 "SubVirt"(亞變種),它幾乎無法被偵測,因為其狀態將完全無法被目標系統所存取。
現在,Rutkowska 將這個殼層(envelope)推入更多,並宣稱唯一讓藍藥丸"露餡" 的方式是 AMD 的 Pacifica 技術有缺點。
"藍藥丸的強處是基於 SVM 技術," Rutkowska 在她的 Invisible Things blog 上解釋。她爭論(contend)一般的偵測方式是否能夠以虛擬機器技術來撰寫,然後讓藍藥丸能夠被偵測到,不過這也表示 Pacifica 本身 "有一堆臭蟲。"
"在另一方面 -- 如果你不能夠為基於 SVM 的虛擬機器想出一個一般的偵測技術,那你應該承認,你也不能夠偵測藍藥丸," 她說。
"在藍藥丸背後的點子相當簡單︰你的作業系統吞下了藍藥丸,然後它在母體(the Matrix)裡面甦醒,而母體被超細薄的藍藥丸 hypervisor 所控制。這全都是即時(on-the-fly)發生的(亦即不用重新啟動系統)並且這不會造成效能的損失,而這就是全部的手段(devices)," 她解釋道。
Rutkowska 強調藍藥丸技術並不是依賴任何底層作業系統的臭蟲。"我已經實作出一個可以給 Vista x64 使用的原型,但我認為它沒有理由不能被移植到其他作業系統,例如 Linux 或 BSD,這些都可在 x64 的平台上執行, " 她附帶提到。
藍藥丸是專門為 COSEINC Research 所研發的,而且將無法被下載。然而,Rutkowska 表示該公司計畫要安排關於藍藥丸以及其他技術的培訓,在那裡將能取得原始程式碼。
Rutkowska 之前造出紅藥丸,它可以用來偵測程式碼是否能夠在 VMM(虛擬機器監視器)或在一個真實的環境當中執行。
※ 相關報導︰
* Taiwan.CNET.com : AMD詳述Pacifica虛擬化計畫
http://taiwan.cnet.com/news/hardware/0,2000064553,20099387,00.htm
* X86 virtualization - Wikipedia
http://en.wikipedia.org/wiki/Virtualization_Technology
* Black Hat Briefings, Training and Consulting
http://www.blackhat.com/
* SyScan '06
http://www.syscan.org/
http://theinvisiblethings.blogspot.com/2006/06/introducing-blue-pill.html