選項
VMProtect是新一代軟件保護(hù)實用程序。VMProtect支持德爾菲、Borland C Builder、Visual C/C++、Visual Basic(本機(jī))、Virtual Pascal和XCode編譯器。
“項目”部分的“選項”小節(jié)允許您配置各種保護(hù)參數(shù):
>文件
內(nèi)存保護(hù)——此選項允許您保護(hù)內(nèi)存中的文件映像免受任何更改(檢查所有不具有 WRITABLE 屬性的部分的數(shù)據(jù)完整性)。在將控制傳遞給程序的原始入口點之前執(zhí)行圖像完整性檢查。如果違反了完整性,則會顯示相應(yīng)的消息并且程序會停止執(zhí)行。
導(dǎo)入保護(hù)——此選項允許隱藏受保護(hù)程序使用的 API 列表以防止黑客攻擊。我們建議將此選項與輸出文件的打包一起使用。
資源保護(hù)——該選項加密程序資源(圖標(biāo)、清單和其他服務(wù)資源除外)。
打包輸出文件——此選項允許您打包受保護(hù)的文件以減小其大小。執(zhí)行受保護(hù)文件時,應(yīng)用程序會自動解壓縮。整個解包過程沒有任何磁盤寫入,完全在 RAM 中。
使用此選項時,我們還建議將EntryPoint包含到受保護(hù)對象列表中。
重要提示:
當(dāng)程序啟動時,在解壓縮代碼后,控件將傳遞給 EntryPoint。如果 EntryPoint 的代碼被虛擬化,那么這段代碼將在與解包程序本身的代碼相同的 VM 解釋器上執(zhí)行。EntryPoint 的虛擬化與受保護(hù)文件的打包相結(jié)合,可防止手動解壓受保護(hù)文件,因為在這種情況下,入侵者必須恢復(fù) EntryPoint 代碼才能獲得工作文件映像。
附加——額外的保護(hù)級別:
水印- 允許向項目添加水印。
VM Segments——編譯文件時,新的段將被添加到存儲各種系統(tǒng)數(shù)據(jù)的地方(虛擬化和變異代碼、VM 解釋器、水印等)。此選項允許您為這些新段指定名稱。我們建議將段的標(biāo)準(zhǔn)“.vmp”名稱更改為其他名稱(例如“.UPX”)。
剝離調(diào)試信息——刪除調(diào)試信息會阻礙破解者對代碼的分析。
Strip Relocations——一些編譯器(即Delphi)為操作系統(tǒng)不使用的EXE文件創(chuàng)建一個重定位表來加載EXE文件。如果啟用該選項,則重定位表占用的空間將用于 VM 需要。
>檢測
調(diào)試器——此選項可防止調(diào)試受保護(hù)的文件。調(diào)試器有兩種類型:用戶模式調(diào)試器(OllyDBG、WinDBG 等)和內(nèi)核模式調(diào)試器(SoftICE、Syser 等)。調(diào)試器檢測是在將控制權(quán)傳遞給程序的入口點之前執(zhí)行的。如果檢測到調(diào)試器,則會顯示相應(yīng)的消息并且程序會停止執(zhí)行。
Virtualiztion Tools——此選項禁止在各種虛擬環(huán)境中執(zhí)行受保護(hù)的文件:VMware、Virtual PC、VirtualBox、Sandboxie。在將控制權(quán)傳遞給程序的入口點之前執(zhí)行虛擬化檢測。如果檢測到虛擬環(huán)境,則會顯示相應(yīng)的消息并且程序會停止執(zhí)行。
>信息
在這里,您可以自定義程序在檢測到調(diào)試器、虛擬化工具、文件已損壞或試圖執(zhí)行受序列號保護(hù)的代碼時顯示的消息。
>許可參數(shù)
選擇在許可管理器中創(chuàng)建的項目文件作為許可參數(shù)文件。默認(rèn)情況下,使用當(dāng)前項目文件。