翻譯|使用教程|編輯:郎婷|2023-04-20 17:01:36.423|閱讀 178 次
概述:VMProtect是新一代軟件保護實用程序。本文介紹VMProtect和相關專業術語,歡迎下載試用~
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
VMProtect是新一代軟件保護實用程序。VMProtect支持德爾菲、Borland C Builder、Visual C/C++、Visual Basic(本機)、Virtual Pascal和XCode編譯器。
同時,VMProtect有一個內置的反匯編程序,可以與Windows和Mac OS X可執行文件一起使用,并且還可以鏈接編譯器創建的MAP文件,以快速選擇要保護的代碼片段。
為了輕松實現應用程序保護任務的自動化,VMProtect實現了內置腳本語言。VMProtect完全支持Windows系列的32/64位操作系統(從Windows 2000開始)和Mac OSX(從版本10.6開始)。重要的是,無論目標平臺如何,VMProtect都支持所有范圍的可執行文件,即Windows版本可以處理Mac OS X版本的文件,反之亦然。
VMProtect的基本原理是通過使應用程序代碼和邏輯以供進一步分析和破解,從而為應用程序代碼提供有效的保護。VMProtect應用的主要軟件代碼保護機制包括:虛擬化、突變和組合保護,其涉及應用代碼的突變與后續虛擬化。
在VMProtect中使用的虛擬化方法的關鍵優點在于,執行虛擬化代碼片段的虛擬機被嵌入到受保護應用程序的結果代碼中。因此,受VMProtect保護的應用無需第三方庫或模塊即可運行。VMProtect允許使用多個不同的虛擬機來保護同一應用程序的不同代碼片段,從而導致更復雜的破解過程,因為黑客現在必須分析多個虛擬機的架構。
VMProtect中應用的應用程序代碼突變的方法基于向應用程序代碼添加各種過多的“垃圾”命令、代碼的“死”部分、隨機條件跳轉的過程。它還改變原始命令并將某些操作的執行轉移到堆棧。
VMProtect與其他軟件保護器的主要區別在于它能夠使用不同的方法保護代碼的不同部分:代碼的一部分可以被虛擬化,另一部分被混淆,并且使用組合方法保護關鍵片段。
VMProtect的另一個獨特功能是嵌入水印應用程序的代碼。水印允許明確識別程序的黑客副本的官方所有者,并因此對他或她采取某些措施。
VMProtect有3個版本:
下表列出了某些VMProtect版本的功能差異:
技術支持 | VMProtect版本 | ||
Lite | Professional | Ultimate | |
保護方法 | |||
突變 | + | + | + |
虛擬化 | + | + | + |
突變+虛擬化) | + | + | + |
控制臺版本 | - | + | + |
保護選項 | |||
內存保護 | + | + | + |
進口保護 | + | + | + |
資源保護 | + | + | + |
包裝 | + | + | + |
調試器檢測 | + | + | + |
虛擬盒檢測 | + | + | + |
服務功能 | |||
水印 | - | + | + |
腳本語言 | - | + | + |
許可證制度 | - | - | + |
許可證管理器 | - | - | + |
文件保護 | - | - | + |
如果你不知道特定于相應主題的術語,你就不能有效地使用工具。以下術語解釋了VMProtect中使用的術語。本詞匯表并非詳盡無遺,因此某些術語的含義可能與經典術語不同。
字節碼-在將真實的處理器的命令轉碼為虛擬機的命令之后接收的代碼。
虛擬化-將應用程序的可執行代碼的一部分轉換為虛擬機的命令的過程,其特征在于潛在黑客未知的命令系統、架構和操作邏輯。虛擬化的代碼片段由虛擬機的解釋器執行,而不將它們轉換為物理處理器的機器語言代碼。通常,虛擬化片段的逆向工程歸結為構建具有與虛擬機模仿的處理器相同的架構的反匯編器以及分析所得到的反匯編代碼。
虛擬機-在受保護的應用程序中直接執行字節碼的程序代碼。
水印-每個用戶唯一的字節數組,允許明確識別程序的黑客副本的法律的所有者。
突變-用一個類似的命令或產生相同結果的一組特定命令替換原始命令。
混淆-一組旨在使程序代碼分析復雜化的方法和技術。根據編寫受保護程序的編程語言,使用不同的混淆類型。通過修改源代碼,對解釋語言(Perl、PHP等)編寫的應用程序進行混淆:注釋被刪除,變量被賦予無意義的名稱,字符串常量被加密等等。Java / .NET應用程序的混淆是通過轉換虛擬機處理的字節碼來執行的。編譯程序的混淆依賴于修改機器語言代碼:混淆器添加各種“垃圾”命令、“死代碼”、隨機跳轉。此外,原始命令會發生變化,一部分操作會移動到堆棧,并且會進行許多結構(或不太常見的數學)轉換。代碼的混淆片段的逆向工程嘗試將片段帶回到其原始狀態,并且只要混淆正確地完成,這是耗時的任務。
保護器-旨在保護其他程序免受黑客攻擊的軟件。今天的大多數保護程序不修改應用程序的源代碼,而是打包或加密應用程序。主要焦點放在保護解包/解密程序或過程上。
入口點-加載到內存中的應用程序的初始地址執行從開始。
打包-通過使用非典型算法壓縮程序和可執行文件來保護程序代碼的方式。受保護的代碼片段由打包器壓縮,并且當執行應用時在用戶側完全或部分地解包。
加密- 使用強大的加密算法保護應用程序的一部分代碼。受加密保護的軟件需要最終用戶輸入激活碼,以消除開發人員為未注冊版本的程序設置的限制。
以上便是VMProtect和相關專業術語的介紹,如果您有任何疑問或者想獲取更多產品試用/授權/價格信息,請點擊VMProtect了解。
加密解密技術QQ群:766135708
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn