spora敲詐者是今年年初發現的一款新型的敲詐者木馬。該類型的敲詐者木馬在密鑰的處理以及與受害者的交互上有重大的突破。
眾所周知,過去的敲詐者木馬在密鑰的獲取上一般有兩種方式,一是將密鑰硬編碼在文件中,這種方案的缺點在于同一批放出的敲詐者木馬使用相同的RSA公鑰,當有一個私鑰泄露之后,同一批敲詐者木馬的受害計算機也就可以得救;另一種方式是從服務端獲取密鑰以達到一機一密鑰的目的,不過倘若無法成功從服務端獲取密鑰將加密失敗。
“spora”敲詐者在密鑰獲取上進行了改進,利用相關的API生成一組RSA密鑰組和一個AES-256密鑰,然后使用該AES-256密鑰加密RSA密鑰組的私鑰,最后用硬編碼在文件中的RSA公鑰加密AES-256密鑰。而對于文件的加密,程序會為每個待加密的文件生成一個AES-256密鑰,并用該密鑰加密文件,最后再使用之前產生的RSA密鑰組的公鑰加密每個文件獨有的AES-256密鑰并寫入文件中。具體如下圖所示。
圖1 加密示意圖
?樣本具體分析
相比較其他敲詐者木馬繁瑣的運行流程,“spora”敲詐者木馬的運行流程相對簡潔。首先提取數據段中的數據解密后保存到棧中,作為第一段shellcode。
圖2 解密第一段shellcode
在第一段shellcode中將申請一段內存用于存放第二段shellicode并執行。
圖3 申請空間并寫入shellcode
在第二段shellcode中程序以掛起方式運行一個自身的新實例,并且以進程替換的方式將第三段shellcode注入到新實例中,這次寫入的shellcode將執行程序最主要的功能—加密。
圖4 解除映射以執行進程替換
在傀儡進程中,程序會先判斷系統版本。
圖5 判斷系統版本
完成系統版本的判斷后,程序會使用硬編碼在程序文件中的AES密鑰解密硬編碼在程序文件中的加密的RSA公鑰以及勒索頁面HTML文檔。方便起見,后面將稱解密得到的RSA密鑰為硬編碼的RSA密鑰。
圖6 解密得硬編碼的RSA密鑰和勒索頁面HTML文檔
之后程序讀取相應的標記文件,該標記文件用于記錄加密文件的一些信息。在初次感染該敲詐者時該標記文件是不存在的,程序會自動創建標記文件,并讀取文件,由于此時標記文件中并無內容,讀取操作會返回-1,程序也就據此確定該計算機是首次感染“spora”敲詐者,并執行加密操作。
圖7 讀取標記文件內容
之后程序將遍歷系統的所有文件以及網絡資源中的文件,并選擇加密的目標。待加密文件的路徑將避開”windows”,”program files”,”program files (x86)”,”games” 四個路徑,加密文件的類型包括xls,doc,xlsx,docx,rtf,odt,pdf,psd,dwg,cdr,cd,mdb,1cd,dbf,sqlite,accdb,jpg,jpeg,tiff,zip,rar,7z,backup。加密后將不會修改文件后綴。
??圖8 不加密的文件路徑
圖9 選取待加密文件過程
遍歷所有文件并獲取待加密文件路徑之后會將文件路徑信息以統一的密碼加密后保存到之前的標記文件中。這也方便之后獲取贖金后對文件進行解密。
?圖10 將文件路徑信息寫入標記文件中
之后就開始進行加密操作,首先是生成一個RSA密鑰組,并將系統信息附到RSA私鑰之后。附加的系統信息包括本地時間,位置信息以及用戶名。
圖11 產生RSA密鑰組
圖12 RSA私鑰后附加系統信息
圖13附加信息的RSA私鑰
之后程序會對附加信息的RSA私鑰求哈希,得到的哈希值將作為本機的標識符,用于之后支付贖金的操作。
圖14 對附加信息的RSA私鑰求哈希作為本機標識符
圖15 生成的本機標識符
然后程序生成一個AES-256密鑰,并用它加密之前產生的RSA密鑰組的私鑰,然后再使用硬編碼在程序中的RSA公鑰加密AES密鑰,然后將加密后的AES密鑰以及RSA私鑰存放到KEY文件中。
圖16 密鑰的處理
最后就是對待加密文件的加密。對于文件的加密,最大的加密大小為5M。程序會為每個文件配置一個生成的AES-256密鑰,并用它加密文件,最后使用之前生成的RSA密鑰組的公鑰加密該AES密鑰,并將加密后的密鑰也寫入文件中。
圖17 文件的加密
在完成加密工作之后,程序不忘刪除卷影,然后將C盤下的重要文件夾隱藏,并生成偽裝成相應的快捷方式指向本程序。除外程序還會生成VBS腳本并將腳本復制到啟動文件夾下,此處不再贅述。
之后程序將彈出勒索頁面,該勒索頁面非常“人性化”,受害者只要點擊相應按鈕就可以跳轉到相應的支付頁面進行支付,支付方式也是多種多樣,包括恢復大小小于25M的文件,恢復所有文件并且移除“spora”敲詐者相關程序等等,每種服務對應的價格也不同。除此之外還可以在線和木馬傳播者交流,這也是之前從未見過的。由此可以看出,“spora”敲詐者已經進入了勒索即服務的階段。
圖18 勒索展示頁面
圖19 支付頁面,右下角可見聊天框
“spora”敲詐者不僅改進了密鑰的獲取以及傳遞方式,還開啟了勒索軟件即服務的先河,不慎感染該敲詐者木馬的用戶只能通過在“便捷的支付頁面”繳納贖金來恢復文件。從“spora”敲詐者的爆發可以看出,敲詐者木馬已經成為一個頗具規模的產業,其作用范圍也不僅僅局限于文件的加密,將包含更多的衍生“服務”,而這些“服務”所帶來的暴利,將極大的增加敲詐者木馬的數量以及類型。
對于普通網民來說,可以從下面幾個方面預防這類病毒:
1. ?對重要數據及時做備份,將備份存在多個位置,預防數據損壞丟失。
2.? 打好系統和軟件補丁,預防各類掛馬和漏洞攻擊。
3. ?養成良好的上網習慣,不輕易打開陌生人發來的郵件附件。
4. ?最重要的,用戶應該選擇一款可靠的安全軟件,保護計算機不受各類木馬病毒侵害。