本文主要是介绍.Net最强加密工具DNGuard HVM?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
DNGuard HVM号称.Net内核级的加壳工具,它修改虚拟机CLR和编译器JIT。号称最强保护。其实破解它还是非常简单的,本篇3分钟带大家学习一个最简单的破解方式。
概括
1.介绍
比如说有以下代码,项目名称DnGuard_Test:
static void Main(string[] args)
{Console.ReadLine();Console.WriteLine("Call Main");
}
用最新版的Dnguard加密下之后。它在目录bin\x64\Debug\net7.0_Protected会生成三个文件
DnGuard_Test.dll
HVMRun64.dll
HVMRuntm.dll
要运行它,需要把运行时文件
DnGuard_Test.runtimeconfig.json拷贝到这个目录。还有一点需要注意
dnguard输出设置成.Net core3.1/5.0/6.0/7.0等。
以上程序运行之后,它在控制台上打印出Call Main这个字符串,想在加密之后把这个字符串改动下。比如第一个字母C改成D,打印出Dall Main。应该怎么做呢?
2.破解
首先去下载一个UltraEdit十六进制的编辑工具,把加密后的DnGuard_Test.dll拖到这个工具里面去。然后Ctrl+F进行十六进制查找,查找数值位:43006100。
43的ASCII码的大写C字母,61是小写的字母a,找到之后,右击43,把它改成44,然后保存。这样就非常简单的把Call Main修改成了Dall Main。通过dotnet命令运行下被加密的DnGuard_Test.dll修改后的样子。
注意,你修改了它之后,
Dngurad会在同目录下自动生成一个备份的
DnGuard_Test.dll.bak。
当然了,以上是最简单的破解方式。还有其它更多,基本上Dnguard跟其它工具一样保护措施非常薄弱,后面有时间再叙。
结尾
作者:江湖评谈
这篇关于.Net最强加密工具DNGuard HVM?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!