許可系統(tǒng)API是VMProtect API及其SDK的組成部分。使用API可以指定序列號(hào)并檢索有關(guān)它的所有信息,包括是否適合該程序、序列號(hào)是否已過(guò)期、該產(chǎn)品注冊(cè)到的名稱(chēng)等等。
破解程序最常見(jiàn)的方法之一是找到要檢查序列號(hào)的位置,以及其后的附近條件跳轉(zhuǎn)。本文,我們將使用這種方法直接在源代碼中“破解”測(cè)試程序,并通過(guò)將代碼鎖定到序列號(hào)上來(lái)實(shí)現(xiàn)文件保護(hù)。
本文介紹了在實(shí)模式下,測(cè)試使用軟件保護(hù)工具VMProtect保護(hù)序列號(hào)的效果。
本文介紹了在實(shí)模式下,使用軟件保護(hù)工具VMProtect啟動(dòng)受保護(hù)的程序的步驟。
本系列教程的五個(gè)步驟說(shuō)明了使用基于軟件保護(hù)工具VMProtect和許可系統(tǒng)的全功能保護(hù)來(lái)保護(hù)簡(jiǎn)單應(yīng)用程序的過(guò)程。
VMProtect通過(guò)在具有非標(biāo)準(zhǔn)架構(gòu)的虛擬機(jī)上執(zhí)行代碼來(lái)保護(hù)代碼,這讓分析和破解軟件極為困難。除此之外,VMProtect還會(huì)生成并驗(yàn)證序列號(hào)、設(shè)置過(guò)期時(shí)間、限制免費(fèi)升級(jí)等。
在使用虛擬機(jī)保護(hù)軟件VMProtect將許可系統(tǒng)集成到應(yīng)用程序過(guò)程中,首先要接收硬件標(biāo)識(shí)符,并將其傳遞給許可系統(tǒng)。當(dāng)許可系統(tǒng)檢測(cè)到標(biāo)識(shí)符與序列號(hào)中的標(biāo)識(shí)符一致后,才能進(jìn)行后續(xù)步驟。
許可系統(tǒng)不應(yīng)接受VMProtect中標(biāo)記為“已阻止”的序列號(hào)。下次重新構(gòu)建應(yīng)用程序時(shí),VMProtect會(huì)將列入黑名單的序列號(hào)的哈希添加到受保護(hù)的應(yīng)用程序。結(jié)果,該應(yīng)用程序的許可系統(tǒng)將來(lái)會(huì)拒絕這些序列號(hào)。
在測(cè)試模式中,許可系統(tǒng)(它返回的狀態(tài)和數(shù)據(jù))對(duì)提供的序列號(hào)的所有反應(yīng)都在配置文件中描述。該文件名為VMPLicense.ini,應(yīng)位于應(yīng)用程序的工作文件夾中。本文將介紹第五步——限制免費(fèi)升級(jí)期限。
在測(cè)試模式中,許可系統(tǒng)(它返回的狀態(tài)和數(shù)據(jù))對(duì)提供的序列號(hào)的所有反應(yīng)都在配置文件中描述。該文件名為VMPLicense.ini,應(yīng)位于應(yīng)用程序的工作文件夾中。本文將介紹第五步——限制程序的運(yùn)行時(shí)間。