先进的Windows软件保护系统
版本:3.1
版本:3.1.4.0
日期:2022 年 11 月 10 日
概述
在创建应用程序时,Compiler 会将应用程序源代码编译成多个由机器语言代码构成的目标文件。然后将目标文件链接在一起以创建最终的可执行文件。
与在编译时将应用程序的源代码转换为机器代码的方式相同,有一些工具可以将编译后的应用程序转换为汇编语言或更高级的编程语言。这些工具被称为反编译器和反编译器。
攻击者可以使用反编译器或反编译器来研究特定应用程序的工作原理以及特定例程的作用。当攻击者非常了解目标应用程序时,他可以修改已编译的应用程序来改变他的行为。例如,攻击者可以绕过在应用程序中检查试用期的例程并使其永远运行甚至更糟,导致应用程序的行为就像它已注册一样。
软件保护器
创建软件保护程序是为了防止攻击者直接检查或修改已编译的应用程序。软件保护器就像一个盾牌,可以使应用程序保持加密并免受可能的攻击。当受保护的应用程序要由操作系统运行时,软件保护器将首先控制CPU并检查系统上可能运行的可能的破解工具(反编译器或反编译器)。如果一切都是安全的,软件保护器将继续解密受保护的应用程序,并赋予它 CPU 的控制权以正常执行。
使用软件保护器的优点是:
保护应用程序免受盗版。
防止攻击者研究应用程序的实现方式。
不允许攻击者修改应用程序以改变其行为
弱点
自软件保护器诞生以来,许多攻击者将大部分精力集中在攻击软件保护器本身而不是应用程序上。已经开发了许多工具来帮助攻击软件保护程序。这些攻击通常会导致攻击者获得已解密并移除保护包装的原始应用程序。
Themida软件保护器的主要问题是它们使用破解者熟知的保护技术,因此可以使用传统的破解工具轻松绕过它们。软件保护器的另一个重要问题是它们限制了操作系统的执行,也就是说,它们以正常的应用程序权限运行。因此,攻击者可以使用以与操作系统相同的优先级运行的破解工具,从而允许他们完全监督软件保护程序在特定时间正在做什么,并在特定位置对其进行攻击。
革命性的解决方案
通过 Themida®,我们集中解决了软件保护者的主要弱点,从而提供了一个完整的解决方案来克服这些问题。Themida® 使用 SecureEngine® 保护技术,当以最高优先级运行时,该技术会实施前所未见的保护技术来保护应用程序免受高级软件破解。
SecureEngine® 打败了当前所有可用于受保护应用程序的破解工具,它将确保您的受保护应用程序仅在安全环境中运行。
目前的保护者声称是最好的!
对于大多数程序员来说,软件保护编程并不是一个非常知名的领域。软件保护技术不像是可以看到和比较的“可见”特征。正因为如此,大多数软件保护作者可以谈论包含在保护方案深处的令人印象深刻的技术,而很多时候这些技术中的大多数几乎不存在,或者它们比看起来的要简单得多。大多数软件保护者反复强调使用非常强大的加密算法,如 RSA、椭圆曲线和 AES,希望最终用户相信这些保护者和加密算法是牢不可破的。这与事实相去甚远,因为软件保护与数据保护截然不同。即使软件保护器使用最强大的加密算法对受保护的应用程序进行加密,受保护的应用程序迟早也需要解密才能由 CPU 运行。正是在这个阶段,大多数攻击者将通过将解密的应用程序从内存转储到磁盘来开始他们的工作,从而不必处理加密算法和重建原始应用程序。
使命
在 Themida® 中,我们希望现实地了解攻击者可以利用哪些弱点,以及我们真正需要注意什么,以尽可能高的安全性来保护应用程序免受软件破解。
特征
这些是 Themida® 的主要特点:
检测/欺骗任何类型调试器的反调试器技术
每个受保护应用程序中的不同加密算法和密钥
避免重建原始导入表的反 API 扫描器技术
目标应用程序中的自动反编译和加扰技术
特定代码块中的虚拟机仿真
高级突变引擎
SDK与保护层通信
任何静态和交互式反汇编程序的反反汇编技术
具有超过 50.000 个排列的多个多态层
高级 API 包装技术
针对文件和注册表监视器的反监视器技术
在真实指令之间随机插入垃圾代码
专门保护线程
高级线程网络通信
目标应用程序中的反内存修补和 CRC 技术
用于扰乱原始指令的变质引擎
高级入口点保护
目标应用程序中的动态加密
真实指令之间的反跟踪代码插入
高级反断点管理器
目标应用程序中的实时保护
压缩目标应用程序、资源和保护代码
反“调试器隐藏”技术
保护代码全突变,避免模式识别
目标应用程序中的实时仿真
目标应用程序内部智能保护代码插入
随机内部数据重定位
在受保护的应用程序中自定义对话框的可能性
支持命令行
还有很多很多...