對兩款流行鎖機的分析
0x00 前言
據我所知,自2014年來,各種就敲竹槓鎖機雖出不窮,剛開始以娛樂為主,後以勒索為目的,其方式變化多端,毫不誇張地說,此類樣本很可能己達到千萬級,成為流行病毒的重要一部分。 型別從bat (批處理)一(vbe)一exe(可執行程式)。其中exe可分為不加殼,加普通殼一一加強殼。其中保護殼的功能各有不同,如反虛擬機器、反沙箱(盒)、反影子。其目的就是為了加大安全人員分析的難度。勒索方式有使用者鎖、螢幕鎖、MBR邏輯鎖。勒索金額各不相同。起初bat、vbe類主要是以net user管理員賬戶來修改,因當時大多數殺軟對樣本呼叫的cmd命令列不阻止,有很多人中招初代的exe類也是如此。螢幕鎖是使軟體顯示於最上層(類似於遊戲全屏),通過各種手段阻止使用者退出並要求輸入密碼,以此來勒索使用者。而MBR邏輯鎖是通過修改MBR,使使用者無法進入作業系統,停留在引導介面並要求輸入密碼,以此來勒索。下面,我們正式進入分析。
0x01本地隨機數
這樣稱是因為樣本的演算法在本身中,隨機ID匹配對應的密碼,作者通過演算法即可算出密碼。這裡以檸檬鎖機為例。

樣本資訊

中招效果

原理就是寫入MBR
在虛擬機器環境中,雙擊樣本。通過彈窗“請不要在虛擬機器中執行程式”標題是SE殼的名稱。

SE殼是目前保護殼中最難破解的,所以我們請來了逆向dalao——sound來幫助我們分析。通過一會的的逆向分析,找到了OEP入口點。據他說是利用指令碼就可以直接跑出OEP的,這個指令碼他曾經發布過,有興趣的可以自己找找看。

找到了OEP入口點,也就是說,我們成功對程式進行了解壓縮。這時候已經開始執行真正的程式了。通過分析演算法,得到結果如下:有兩個隨機數,一個取md5,一個取16進位制大寫。然後與固定引數25572參與運算,轉換為md5,取前10位,再取一次md5前16位,最後得到密碼,並且都是大寫的。破解該鎖後,作者聲稱無法破解的幻想已經破滅。
0x02網路隨機數
這樣稱只是為了方便辨識,而不是演算法在伺服器上。其原理就是將本地演算法生成的ID與密碼傳送到伺服器/郵件上這裡以蝸牛鎖機為例。MBR介面上屆有兩個QQ號QQ名為主號或備用號,頭像為動漫人物的鎖機,一定是該作者編寫的。因中的人數眾多,我們對該樣本進行深入分析。
以下是詳細資訊

360天眼情報系統情報

中招情況

通過行為分析工具分析得,該樣本僅為一個下載器,會從伺服器上下載真正的鎖機,以此來達到免殺的目的。但筆者下載了作者伺服器上的樣本,被360 QVM報毒。說明360在聯網情況下,支援查殺該樣本的變種。
下載器情況

將樣本在虛擬機器內執行分析,樣本彈窗提示請勿在虛擬機器內執行,因為樣本加的是SE殼,所以使用分析工具進行執行分析。
樣本執行流程

SE殼彈窗提示

繞過之後就可以看到前面樣本的下載地址了

那怎麼繞過的SE殼的虛擬機器檢測呢?
因為是dalao幫忙分析的,他的方法我們不得而知。但是我還是有一個辦法可以繞過SE殼的虛擬機器檢測的。這個辦法是從pxhb大佬那裡學來的。我貼在這裡:
第一處:
特徵碼81 7D E4 68 58 4D 56
cmp dword ptr ss:[ebp-0x1Ch],0x564D5868h //將564D5868 任意修改
jnz L0069B0FF
push -0x4h
pop eax
jmp L0069B101
L0069B0FF:
xor eax,eax
L0069B101:
call L006B3C4C
retn//這裡把eax賦值0也可以
原理:in eax,dx這個大家都知道
第二處:
特徵碼55 8B EC 83 EC 14
push ebp//直接mov eax,0retn mov ebp,esp sub esp,0x14h push ebx push esi jmp L0069AFA9
原理:關鍵部分vm了
作者使用的是stmp郵件伺服器

我登陸上作者的郵箱,得到鎖機的密碼。

分析到此結束
另外,截至文章發表前,病毒作者作者加入了對火絨的檢測,也就是說,在安裝火絨的電腦上不執行。但是,這並沒有什麼用。
0x03 總結
中此類病毒的原因,大多數都是為了貪小便宜,體驗開外掛得到的樂趣。但也有些人,輕信作者所謂的“誤報”選擇關掉殺軟,我就把他歸結為智商問題。遇不放心的軟體放到虛擬機器執行,要是虛擬機器執行不了,那就是軟體作者對軟體採取了反虛擬機器措施。這時候,你執行這個軟體就得小心了。