JhonSong 发表于 2023-11-17 00:58

分享一种简单的程序加密方式:将exe写入另一个exe中并加密执行

本帖最后由 JhonSong 于 2023-11-20 14:07 编辑

之前在工作的时候逆向过一个EXE,主要是为了研究它的运行机制,后来发现这个EXE有一个简单的保护机制,防止别人逆向。当然了,最后还是被我搞出来了,在这里分享一下这个保护机制,以后在这个基础上可以做的更加复杂,来保护自己开发的程序。

1.这个是程序的主要部分,其中有个“byte[] array”的数组,存放了1600多个数据,这就是真正的EXE加密后的二进制数据。


2.好在这个EXE可以用dnspy调试起来,通过查看内存,很容易获取到解密后的数据。


3.将解密后的数据从内存中复制出来,直接生成一个EXE,这样就得到了真正的EXE。


*********************************** 分割线:上面不变,下面是新增内容 ********************************************


参照上面的设计,这里添加上实验代码,一些不关键的加密部分代码,就不写了,所以实际代码就两三行(其实写成一行也无所谓)。见下图


参照下面可以关闭控制台窗口

15126819695 发表于 2023-11-17 11:07

.net还是第一次见以前我用易语言也是内存运行我的exe和内存加载DLL,但是很快就被别人dump出来了   后面有验证也是模仿这种写法被秒破解

hehaohw 发表于 2023-11-26 19:50

看到KOI是ConfuserEx壳,最近遇到个程序就是用ConfuserEx壳打包DLL加密的,用dnspy转存模块的dll区段名和.NET Directory是空白的,不会修复,最后只能动用OD才DUMP出来。

oumingxin 发表于 2023-11-17 10:12

哈哈,运行程序,直接DUMP就下来了,这加密。。。。

danielau 发表于 2023-11-17 11:11

是一种思路,感谢分享,但是容易被dump

清淡如风 发表于 2023-11-17 11:15

高大上,学习学习。

ModelPorter 发表于 2023-11-17 11:25

这个就是自解压, 自解密程序吧

Light紫星 发表于 2023-11-17 12:12

这好像是c#的一个加壳程序的壳

Zhwenqiang 发表于 2023-11-17 12:42


高大上,学习学习。

qq06314488 发表于 2023-11-17 12:48

能想到这个法子的,也是脑洞打开

bdzwater 发表于 2023-11-17 13:02

学习一下
页: [1] 2 3 4 5 6
查看完整版本: 分享一种简单的程序加密方式:将exe写入另一个exe中并加密执行