我们的客户对如何保护 .NET 应用程序免遭破解和转储提出了许多问题。在本文中,我们将尝试描述保护此类特定文件的所有薄弱环节和细节。
The Enigma Protector 是一款专门设计用来为应用程序添加高强度保护的强大工具。它旨在防止非法复制、反编译和修改代码等操作,以保护应用程序的安全性和完整性。
The Enigma Protector支持多种类型的文件格式,包括Win32可执行文件(.exe)、Windows屏幕保护程序(.scr)、动态链接库(.dll)、32位ActiveX控件(.ocx)和.NET可执行文件(.exe)等。
The Enigma Protector 官方正版下载https://www.evget.com/product/4355/download
本教程介绍如何在没有 Windows 管理员权限且无需调用 regsvr32 的情况下注册 ActiveX/COM 组件(*.dll、*.ocx)。此信息主要对经常使用 ActiveX 组件的 Visual Basic 开发人员感兴趣。我们为文件和注册表虚拟化提供商业(Enigma Protector)和免费软件(Enigma Virtual Box)解决方案。
为什么 ActiveX 需要管理员权限?
在 ActiveX 安装过程中,系统会将安装设置写入注册表。稍后,所有 Windows 用户都可以使用已安装的组件。系统将值写入 HKEY_CLASSES_ROOT 和 HKEY_LOCAL_MACHINE,如果用户没有管理员权限,则这些值是只读的。这就是 regsvr32 无法安装组件的原因。
如何解决这个问题?
这个问题可以通过使用注册表虚拟化来解决,即模拟注册表并允许对只读项进行写访问的系统(将所有更改保留在内存中虚拟化)。
下一章将详细介绍如何使用我们的安全商业软件Enigma Protector或免费软件Enigma Virtual Box设置注册表虚拟化。
Enigma Protector逐步说明:
– 进入输入面板并选择输入文件名,即使用 ActiveX/COM 的可执行文件的文件名 – 进入 Virtual Box – 文件面板。添加 ActiveX/COM 文件以及您想要虚拟化的其他文件(将所有文件放入%DEFAULT FOLDER%) - 双击文件树中的每个 ActiveX 文件以调用“属性”对话框并选中“注册为 ActiveX”选项” – 转到 Virtual Box – 注册表面板。正如我上面提到的,当系统注册 ActiveX 组件时,它会将安装设置写入 HKEY_CLASSES_ROOT 和 HKEY_LOCAL_MACHINE。确保至少将这 2 个路径标记为虚拟以进行注册表虚拟化 – 某些 dll 文件(都是 ActiveX 组件)可能具有 DEP 不兼容。如果文件未加壳/保护,则可能不会出现此问题,但保护后将停止工作。要解决此问题,请转到 Virtual Box – 选项面板并选中选项“使用临时文件映射可执行文件” – 单击“保护”按钮并测试受保护的可执行文件。
使用我们的免费软件虚拟化解决方案 – Enigma Virtual Box可以完成相同的过程。配置步骤与上面为 Enigma Protector 编写的步骤相同。
另请注意,受保护的文件在没有虚拟化文件的情况下也能正常工作。因此,在保护之后,应用程序可以/应该在没有虚拟化文件的情况下进行分发。