码迷,mamicode.com
首页 > 其他好文 > 详细

对近在眼前加密软件原理的猜想

时间:2019-06-08 15:01:29      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:分享   加壳   释放   验证   处理   文件   nbsp   一个   完整   

    当年一直有一个龌龊的想法,就是给别人的软件加上自己的限制,比如密码,比如验证等等。

    这种想法一直延续到今天,有事没事我就会上网研究一下相关技术,看看别人写的源码,r然后自己想想。

    不过,因为技术有限,一直都没能很完美的实现。看过的源码也都原理一样,跟我一开始的思路都是一个东西。

    后来发现近在眼前大神的一款工具,给任何软件加密码。

    尝试了一下,发现无比神奇。然而更神奇的是,大神居然把这款软件的源码共享出来。然后我各种的研究啊,发现还是看不懂。

    里面最重要的一部分叫做“头文件”,加载在资源中。我将资源释放,发现是一个完整的exe文件。

    然而这个文件是怎样写的,大神没有分享。

    我的思路就开始跑偏,觉得大神可能是pe头什么的汇编操作。查了各种资料也没查出个所以然来。

    最近研究写一款压缩壳,想到了一个思路,忽然对大神当年写的“文件头”有所猜想。原来主要东西就是一个解密运行的原理。所有的核心都在这个“文件头”里。

    猜想原理,假设要加壳的原文件为a,加壳后的为b,首先写一个头文件,这个头文件是一个完整的exe文件,他主要功能是验证密码,完整的计算a的大小,并运行a。

    然后将a对接到头文件后面,生成一个b。

    当软件运行的时候,头文件会效验密码正确性,然后自动剥离a,并运行a。这样就实现了对a的完美限制。

    话说回来,这样就有点太简单了,所以在对接前,通常要经过一定的处理,比如压缩,比如加密,反正就是一些字节集操作。

    而剥离的方法,通常是写出,但如果a未加壳,那么可以申请内存,直接内存运行即可,无需写出。

    不知道大神是不是这样写的,一切都是我的猜想。

对近在眼前加密软件原理的猜想

标签:分享   加壳   释放   验证   处理   文件   nbsp   一个   完整   

原文地址:https://www.cnblogs.com/hongyuyingxiao/p/10990557.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!