原創(chuàng)|其它|編輯:郝浩|2012-11-06 17:31:11.000|閱讀 2568 次
概述:現(xiàn)在殼的發(fā)展一個趨勢就是虛擬機保護,利用虛擬機保護后,能大大提高強度,因此建議盡可能使用此類技術(shù)保護軟件。如Themida ,WinLicense,VMProtectr等殼帶有虛擬機保護功能,因此得用好其SDK。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
現(xiàn)在殼的發(fā)展一個趨勢就是虛擬機保護,利用虛擬機保護后,能大大提高強度,因此建議盡可能使用此類技術(shù)保護軟件。如Themida ,WinLicense,VMProtectr等殼帶有虛擬機保護功能,因此得用好其SDK。
VMProtect是一款純虛擬機保護軟件,官方鏈接:www.VMProtect.ru。它是當前最強的虛擬機保護軟件,經(jīng)VMProtect處理過的代碼,至今還沒有人公開宣稱能還原。但也有缺點,就是會影響程序速度,因此在一些對速度要求很高的場合就不適合用了。VMProtect 1.22.3之前是免費版,可以支持EXE,DLL等文件。更高版本需要購買,其支持驅(qū)動的保護。現(xiàn)在流行的做法,先用VMProtect將你的核心代碼處理一下,再選用一款兼容性好的殼保護。
VMProtect并沒有提供使用說明,必須告訴VMProtect你要加密的代碼具體地址,這對使用者有一定的要求,至少要懂一些跟蹤技術(shù),可以用調(diào)試器,如OllyDbg跟蹤到程序需要保護的地址,然后添加地址到VMProtect。 在這以一個記事本程序為例來演示一下使用方法。
運行VMProtect后,打開NOTEPAD.EXE文件。單擊Dump標簽,輸入要加密的起始地址,光標來到要加密代碼起始地址后,點擊菜單“project/new procedure”,會出現(xiàn)一個新的項目,如下圖。
VMProtect v1.2以上支持SDK了,可以編程時插入一個標記,然后在加密時,VMProtect會認出這些標記,并在有標記的地方進行保護。在程序源碼中,用這對標簽將一些核心代碼包含,編譯成EXE文件。然后用VMProtect打開EXE,單擊“Project”菜單下的“New procedure”或者單擊工具欄中的“New procedure”按鈕,在彈出的添加地址窗口中會自動將SDK定義代碼的地址填上。然后在VMProtect的“Options”窗口中設(shè)置相應(yīng)的選項,最后單擊工具欄中的“Compilation (F9)”按鈕,便可對目標軟件進行保護。經(jīng)VMProtect處理過的軟件,可以繼續(xù)用Asprotect, Themida等加殼軟件進一步保護。
VMProtect是當前最強的虛擬機保護軟件,經(jīng)過VMProtect處理的軟件基本是沒法分析原程序思路的,關(guān)鍵是用好,一定要將程序關(guān)鍵代碼進行處理。另外,經(jīng)虛擬機處理代碼效率會降低,因此一些對效率要求比較高的代碼就不要用VMProtect進行處理。
ASProtect是一款應(yīng)用面最廣的加密殼,其兼容性和穩(wěn)定性很好,許多商業(yè)軟件采用這款殼加密。開發(fā)者是俄國人Alexey Solodovnikov,官方站點www.aspack.com。
ASProtect SKE系列己采用了部分虛擬機技術(shù),主要是在Protect Original EntryPoint與SDK上。保護過程中建議大量里使用SDK, SDK使用請參考其幫助文檔,在使用時注意SDK不要嵌套,并且同一組標簽用在同一個子程序段里。ASProtect使用相當?shù)暮唵危蜷_被保護的EXE/DLL文件后,選上保護的選項。再單擊菜單Modes,單擊Add Mode按鈕,將Is this Mode Avtive選上,最后,單擊Protection標簽,對軟件進行保護即可。ASProtect加殼過程中也可外掛用戶自己寫的DLL文件,方法是在上圖中的External Options選項加上目標DLL即可。這樣,用戶可以在DLL加入自己的反跟蹤代碼,以提高軟件的反跟蹤能力。
Armadillo也稱穿山甲,是一款應(yīng)用面較廣的殼。可以運用各種手段來保護你的軟件,同時也可以為軟件加上種種限制,包括時間、次數(shù),啟動畫面等等!很多商用軟件采用其加殼。Armadillo對外發(fā)行時有Public,Custom兩個版本。Public是公開演示的版本,Custom是注冊用戶拿到的版本。只有Custom才有完整的功能,Public版有功能限制,沒什么強度,不建議采用。
EXECryptor也是一款猛殼,可能由于兼容性等原因,采用其保護的商業(yè)軟件不是太多。這款殼的特點是Anti-Debug做的比較隱蔽,另外就是采用了虛擬機保護一些關(guān)鍵代碼。
Themida是Oreans的一款商業(yè)殼,Themida 1.1以前版本帶驅(qū)動,穩(wěn)定性有些影響。Themida最大特點就是其虛擬機保護技術(shù),因此在程序中擅用SDK,將關(guān)鍵的代碼讓Themida用虛擬機保護起來。Themida最大的缺點就是生成的軟件有些大。WinLicense這款殼和Themida是同一公司的一個系列產(chǎn)品,WinLicense主要多了一個協(xié)議,可以設(shè)定使用時間,運行次數(shù)等功能,兩者核心保護是一樣的。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn