zeknight 发表于 2010-7-28 16:54:26

请教一个问题~~~(我很菜,别笑我!)

最近学习易语言和汇编,一次在调试的过程中发现了一个很奇妙的程序,就是给自己的NOTEPAD.EXE加上使用限制。

在那个程序上,加密者给程序添加上了网络时间校验的功能,就是如果网络时间不对就打不开记事本!本以为是调用,但是在调试过程中发现它里面竟然就包含了记事本的程序

我在这里想请教的是,这个程序用汇编或者其他语言是怎么做出来的呢?

casgsn 发表于 2010-7-28 18:04:32

最近学习易语言和汇编,一次在调试的过程中发现了一个很奇妙的程序,就是给自己的NOTEPAD.EXE加上使用限制。 ...
zeknight 发表于 2010-7-28 16:54 http://www.unpack.cn/images/common/back.gif

原理就大概懂得,如何实现不清楚,不了解加壳的过程编程该如何写代码。。

很多加壳软件都有网络时间验证功能啊。。

也就是在程序执行前判断时间,如果时间正确,再解包加壳的程序,执行。(加壳后的程序,本身肯定是需要包括了原有的执行文件,可能加密了也可能没有)

直接解包是最简单的加壳方式。。。

xxz 发表于 2010-7-28 21:39:59

LZ头像好有爱。。

zeknight 发表于 2010-7-28 23:38:58

可惜不是高手~~~~想到的方法只有捆绑!

是不是能做个DLL,然后调用!

hjw88 发表于 2010-7-30 09:34:55

不懂,只知道一点易语言,如果用易语言写,我的简单思路就是写个验证,再把记事本当资源插进去,如果通过验证就释放资源(记事本),通不过就退出程序。很菜的想法,呵呵。。。。。

zeknight 发表于 2010-7-30 12:39:39

试一试看看呢~

monnyabcd 发表于 2010-7-30 14:29:03

本帖最后由 monnyabcd 于 2010-7-30 14:32 编辑

如果你汇编很通的话,直接反汇编,在程序的空白代码段处加入功能代码,最后在通过跳转跳回程序原入口处,看楼主刚学不久,还是先把知识学深了,慢慢来不急,学习总有个过程,到了某一天,你在回过头来看你曾问过的问题或无法解决的问题,发现原来是如此easy,

zeknight 发表于 2010-8-1 20:31:49

如果你汇编很通的话,直接反汇编,在程序的空白代码段处加入功能代码,最后在通过跳转跳回程序原入口处,看 ...
monnyabcd 发表于 2010-7-30 14:29 http://www.unpack.cn/images/common/back.gif


   确实是这样~~~

lostkeyboard 发表于 2010-8-2 07:27:03

貌似是在原来的NOTEPAD.EXE 空白处里面加入了网络验证代码
页: [1]
查看完整版本: 请教一个问题~~~(我很菜,别笑我!)