Themida是先进的Windows软件保护系统,它被用于满足软件开发人员对于所开发应用程序安全保护的需求,使其远离被先进的逆向工程和软件破解的危险。Themida采用最新最强大的软件保护技术SecureEngine®设计。
从攻击者的角度来看,Themida与传统的软件保护器完全不同,这是因为其复杂的保护引擎和高优先级的代码,可以针对可能的攻击者对整个系统进行监督。从软件开发人员的角度来看,Themida非常易于使用,并且可以轻松地调整其保护技术以满足开发人员的需求。
下载Themida最新版https://www.evget.com/product/3593/download
Themida使用SecureEngine®保护系统来涵盖各种情况。在以下情况下,SecureEngine®是理想的解决方案:
外挂程式
Themida允许您插入将嵌入受保护的二进制文件内的自定义插件(DLL)。嵌入式插件可以实现在发生特定保护事件时将调用的特定已定义回调,因此您可以对保护进行更多控制,添加自己的自定义保护等。
插件基本上是经过编译的本机DLL(不支持.NET DLL),可导出与特定名称模式匹配的特定功能名称。例如,回调“ * SecureEngineInitialize * ”(注意通配符)意味着您可以定义(要导出的)任何函数,该函数将在函数名称中包含“ SecureEngineInitialize”字符串。例如,函数名称MyPlugin_SecureEngineInitialize将匹配“ * SecureEngineInitialize * ”回调。
选项
执行进程挂钩:此选项将完全模拟您的DLL在内存中的加载。仅特定插件需要此选项。没有此选项,大多数插件都可以正常工作。首选是取消选中此选项,因为它不会在当前进程上执行任何挂钩。
测试插件
修改完插件后,最好测试一下插件,以确保已按预期定义了调用约定(stdcall)和参数。要测试您的插件,您可以右键单击它,然后选择“ Test Plugin ”。您定义的回调将使用默认/虚拟参数进行调用以测试您的回调。如果回调失败(产生异常等),它将在用户界面上报告。
支持的编译器
对于用于创建插件的编译器没有任何限制。唯一的要求是,该插件不能是.NET(或混合托管)DLL。仅支持本机DLL。
如果您使用Visual Studio创建插件,则应避免与Microsoft运行时库(例如MSVCR100等)的显式链接。您应该使用/ MT编译器开关来编译DLL。
插件回调
该插件系统将在将来的版本中通过新的回调进行扩展。当前定义的回调(名称模式)为: