一、樣本簡介
樣本是52論壇找到的
樣本鏈接: https://pan.baidu.com/s/1yRlNwHKSa9F-nHhUiO0BCA 提取碼: p498
二、現象描述
點開樣本後,會彈出一個文本,裏面有一串數字,這串數字是加密和解密的關鍵。然後電腦CPU會飆升到100%,是因爲病毒創建了50個加密線程加密文本。
三、樣本信息
MD5值:abca8f0299f6b59111436948e98bdb64
SHA1值:42db06832b7d0afd7b4648fef0e4eece41c804ee
CRC32校驗碼: 34d1d386
四、樣本分析
1)、用IDA打開樣本,發現輸入表爲空的。發現大量亂碼字符。估計樣本動態解密被加密的函數名,然後用GetProcAddress獲取函數地址。先寫個腳本解密所有函數名,腳本鏈接:https://blog.csdn.net/liuhaidon1992/article/details/103386284
2)、樣本解密完所有函數後,通過GetLocaleInfoA獲取當前計算機所屬國家/地區。對以下四個地區直接結束進程,不加密
3)、刪除卷影關閉自動修復
4)、創建名爲 YWgnI24wSXPdcEmXd 的互斥變量
5)、創建50個加密線程A用來加密文件
再創建一個線程B,用來創建幾個文件
6)、線程B行爲如下
收集當前電腦的信息
計算以下關鍵數據
具體計算方式如下:
通過函數QueryPerformanceCounter 獲取時間並保存
然後經過以下計算,循環計算數據
關鍵計算如下
計算完所有數據,將數據組合起來,每一段數據中間加0x57用以隔開,最後加一個0x00
最後保存這些數據和之前收集到的電腦信息到 temp000000.txt,並打開
創建勒索文件 _RESTORE_FILES_.txt
7)、加密線程A會一直等消息,直到B線程執行完成後,纔會開始遍歷磁盤,執行加密算法。
具體加密行爲如下
1.先更改文件名,在後面加後綴“.id_3458260825_.WECANHELP”
2.將線程B計算得到的偏移94處的前8個字節數據與明文前8個字節相XOR,結果覆蓋前8個字節。
3. 連續進行三次des加密,密鑰在地址0x411238處
重複第二步和第三步,不過第二步XOR的數據,變爲第9到第16字節的數據與第1到8字節的數據,結果覆蓋第9到第16字節的數據,之後的計算,就這樣每8個字節爲一組,分別與前8字節進行XOR運算。
之後經過函數0x40a464處理,此函數主要分爲三步
第一步:
第二步:
第三步:
至此加密完成,再調用WriteFile寫入文件中。