近年來,勒索軟體結合APT攻擊手法,演進成目標式勒索攻擊,不只是加密受害者的資料,進而勒索贖金,同時也將會資料竊取,並揚言外洩企業資料索取更高額贖金,到底,這些勒索病毒的攻擊方式與行為有何特性?
在今年臺灣資安大會上,精品科技資訊安全部副理楊庭瑋對此提出深入說明。該公司分析了超過20個勒索病毒家族,以及3百多支勒索病毒,從其攻擊行為歸納出不同的攻擊特徵,進而理解程式碼混淆後為何難以偵測。
同時,他也具體介紹了無檔案式(Fileless)攻擊,以及利用系統內建白名單應用程式進行惡意的行為。
目標式勒索軟體攻擊不僅加密與竊取,並已呈現高度模仿的趨勢
目標式勒索攻擊防不勝防,楊庭瑋表示,基本上,現今的勒索病毒在發展上,已呈現相似度越來越高的趨勢。楊庭瑋指出,這些不同的勒索病毒族群,會互相學習、模仿,結果就是趨於雷同,或是慢慢變得一致。而這些目標式勒索病毒的共通點,就是不只是以加密來向受害者勒索,同時,還會竊取資料。
進一步分析其技術手法後,他們統整出幾個駭客常用的攻擊行為特徵。例如,關於修改作業系統內建應用程式的手法,幾乎多數目標式勒索病毒都會採用,其他還包括無檔案、巨集型態、DLL注入脅持,以及迴避沙箱與虛擬機器等,也很常見。
同時,為了具體說明這樣的攻擊流程,他以郵件攻擊的通用情境為例,讓大家較容易理解。簡單來說,當駭客寄送惡意郵件時,附件夾帶的型態分為兩種,一種是惡意程式(如EXE檔),一種是惡意Office巨集。
上述惡意軟體的目的,就是要修改作業系統內建的白名單應用程式,而可以修改的內容很多,包括開機磁區、檔案權限、機碼,也能清除備份、刪除陰影快照與程序,以及加入惡意Script、執行惡意DLL等。因此,多半郵件防護系統偵測到,會直接擋掉這類惡意程式。
另一種方式是透過惡意Office巨集散播,當中運用了無檔案式與混淆的技術來突破防護,進而能夠下載勒索程式,也可以做到上述的修改作業系統白名單。
在目標式勒索攻擊的流程中,有幾個關鍵手法值得重視,精品科技資訊安全部副理楊庭瑋以通用郵件攻擊流程為例,指出無檔案式攻擊與程式碼混淆手法變得更普遍,以及作業系統內建白名單應用程式遭到利用的風險。
為了規避防護,目標式勒索更常運用程式碼混淆技術
在這樣的攻擊過程中,楊庭瑋特別說明幾個惡意軟體得以滲透的關鍵。例如,程式碼混淆(Obfuscated)的手法變得很普遍,許多勒索軟體都在運用此一方式,迴避安全機制與防護系統。
關於程式碼混淆應用在攻擊的流程是如何進行?由於現在一些攻擊者會將PowerShell,利用在勒索軟體攻擊或入侵滲透的場景,因此,楊庭瑋以一段查看電腦資訊的PowerShell指令,來舉例說明,他說,當這段程式碼經過混淆一次後,整段指令內容就會變長,多出許多亂碼,使得可讀性變低,但這段程式碼在PowerShell執行時,最終還是可以得到同於未混淆之前的結果。
值得我們注意的是,這類CMD與PowerShell的程式碼混淆方式,其實有非常多種。楊庭瑋表示,他自己就掌握了5到6種工具,可以直接將程式碼進行混淆。
有那些常見的混淆方法?他舉例,包括:轉譯符號、base64編碼、編碼執行、別名編譯、Command編碼、工具混淆,還有Invoke-Expression、ToString、ASCII、Invoke置換、變換字串與環境變數等。
當然,程式碼混淆也有程度差異,當使用多層次混淆後,整段程式碼不僅變得更長,幾乎也只會看到一堆亂碼,像楊庭瑋自己最多能做到6層的混淆。他強調,在多層次混淆下,程式碼將變得不易識別,也很難還原,現在駭客不少都會以此來迴避防守機制。
現在有許多攻擊者將PowerShell利用在勒索病毒攻擊場景,同時搭配混淆技術來規避電腦的資安防護機制,楊庭瑋指出,混淆方式有相當多種,而且經過幾次混淆處理之後,資安人員或端點安全系統將不易識別其指令的作用。
例如,上圖最左邊這段指令「Get-CimInstance -ClassName Win32_ComputerSystem」,作用是查看電腦資訊,在經過混淆兩次後,指令變成上圖最右邊看起來又長又是亂碼的指令,但執行後的效果與原本指令一模一樣。(圖片來源:精品科技)
無檔案式攻擊也成目標式勒索的一大特徵,型態可分為3種
另一現在目標式勒索攻擊常使用的技術手法,是無檔案式型態。對於無此種威脅,楊庭瑋引用了微軟今年4月中旬公布的技術文件,因為當中已提出系統化的歸納,解釋起來會更清楚。
根據微軟的定義,無檔案式威脅可分為三種型態,包括:未執行的檔案活動、間接的檔案活動,以及操作所需的檔案。
他解釋,以未執行檔案活動而言,攻擊者會利用像是系統的漏洞,透過一串腳本、或是一串指令碼,直接在核心記憶體傳遞執行,因此不會有檔案出現在你的電腦裡。例如,之前利用SMB協定的漏洞的WannaCry,就是透過無檔案來執行;或者是,攻擊者也可以利用硬體的漏洞,或是透過感染惡意程式的韌體來進行攻擊行為。
在間接檔案活動的形態上,簡單來說,無檔案惡意程式碼並不會直接在檔案系統寫入檔案,但最終可能會間接使用檔案。他表示,攻擊者可使用Windows提供的JaveScript、VBScript,以及PowerShell指令,來發動攻擊,也就是說,可以間接使用作業系統的處理程序去進行攻擊。
至於操作所需檔案的型態方面,攻擊者可利用作業系統、瀏覽器或Java引擎(編按:根據微軟Fileless threats的文件所示)等,去執行Shellcode,而能傳遞至電腦的記憶體中執行;或者是,利用Office的巨集功能,使用VBA語言進行攻擊。
為了讓大家更好理解無檔案式攻擊的型態,楊庭瑋特別引用微軟今年4月中旬公布的「Fileless threats」技術文件來說明,因為當中已有系統性的歸納,將無檔案式威脅分為三種型態:未執行的檔案活動、間接的檔案活動,以及操作所需的檔案。
整體而言,楊庭瑋指出,這些攻擊型態的共通特點就是,都在記憶體執行,沒有任何一個檔案。他並舉出幾個常見的攻擊方式,包括:透過瀏覽器執行惡意程式碼,透過微軟Office巨集發動攻擊,以及使用PowerShell的腳本攻擊等
其中,在PowerShell的使用方式上,有心人士又可以做出更多惡意行為,例如,使用程式漏洞攻擊、植入記憶體執行、安裝惡意腳本、潛伏於系統,以及利用白名單工具或程式攻擊。
在此當中,他也特別透過幾個範例,展示無檔案式與Office巨集的結合應用,讓與會者看看如何利用混淆手法,迴避防護機制與人員監測。
例如,他先以EPPlus工具製作一個有惡意巨集的Excel檔案,當使用者開啟該Excel檔案時,巨集功能也會啟動惡意腳本;此時,我們透過系統資源監控工具來觀察,可以發現:電腦在執行的Excel程序底下, PowerShell也正在執行,而進一步檢視其內容,將可看到這裡執行的程式碼,一旦該指令同時採用了混淆手法來遮蔽,我們將無法直接看出背後到底在做甚麼事。
基本上,這樣的手法就是利用Office巨集的功能來寫入VBA的程式,因此VBA程式可以呼叫PowerShell或CMD,然後,這裡執行經過混淆的程式碼指令,將可從網路下載具有惡意攻擊的腳本,而這些腳本也會經過混淆來規避偵測,並透過PowerShell的指令,直接進入電腦的記憶體去執行。
因此,楊庭瑋提醒,光是從郵件寄送的Office附檔來看,就能夾帶很多意想不到的資安威脅。因為,若使用者電腦不慎執行惡意的Excel檔案,其實背後都有大量風險存在,攻擊者將可做出各種惡意行為。
利用作業系統白名單應用程式進行惡意行為,是現在目標式勒索病毒的一大特徵,楊庭瑋指出,他們的團隊分析了300多支勒索病毒,發現vssadmin、WMIC、bcdedit、wbadmin、icacl、cscript與rundll32,是被利用的次數最多的系統內建程式。(圖片來源:精品科技)
作業系統內建程式被利用的情形,將是一大議題
在目標式勒索病毒的攻擊行為中,楊庭瑋表示,還有一個常見的嚴重情形,那就是作業系統內建白名單應用程式,已經遭到駭客廣泛利用。
以普遍攻擊活動而言,楊庭瑋指出,最常被利用的應用程式有16支程式,包括explorer.exe、svchost.exe、regsvr32.exe、dllhost.exe、services.exe、cvtres.exe、msbuild.exe、PowerShell.exe、RegAsm.exe、RegSvcs.exe、vssadmin.exe、arp.exe、vbc.exe、csc.exe、AppLaunch.exe、cmd.exe,這些都是Windows作業系統內建的程式,但卻被網路攻擊者拿來濫用。在此當中,又以explorer.exe、PowerShell.exe、vssadmin.exe 與cmd.exe最值得關注。
而在精品分析的3百多支勒索病毒中,他們發現有7個白名單程式被利用的次數最多,分別是vssadmin、WMIC、bcdedit、wbadmin、icacl、cscript與rundll32,另外,PowerShell混淆也同樣值得關注。
楊庭瑋表示,當這些白名單應用程式遭駭客利用,將破壞防毒及備份安全機制,也如同前述所提,攻擊者將可修改系統登錄機碼、檔案權限,以及加入惡意Script、執行惡意DLL等。他認為,以Windows 10作業系統本身的EXE執行檔,就有多達3千多支,該如何去防守與限制是很大的議題。
因此,他們也藉由這樣的分析,找出現在普遍勒索軟體最常被利用的程式,才能進一步關注相對的防護方式與技術。
另外,他也提醒,除了無檔案式攻擊與利用系統白名單進行惡意行為,在他們研究勒索病毒的攻擊行為中,DLL注入脅持手法的威脅也同樣值得注意,因為惡意DLL注入合法或白名單的程式內,將對系統造成很嚴重的破壞。
熱門新聞
2024-12-24
2024-12-22
2024-08-14
2024-12-20
2024-11-29