[哎]关于ftp扫描工具的破解问题

先前发布过一个工具,用于ftp弱口令扫描

文章地址:http://blog.csdn.net/prsniper/article/details/6101770

当时为了吸引一些反汇编方面的高手交流,故意把DLL使用期限限制在2010年,可惜没人鸟我~~~~~~~~~

下面就自己破解吧,解解闷。

源代码:

其实把系统时间调到2010年,就不会出现下面的框框~

我们看下,上面的C语言代码编译后是什么样:

看下开头,一条入栈指令 push ebp,长期以来,指令指针寄存器sp(32位的esp)都被ebp代替了

到最后结束的时候必定有一条pop ebp 恢复ebp寄存器的值,破解时候基本可以用这个来确定函数的开头

我们对比下时间检测语句

cmp是比较语句,其中0x7DA(7DAh)的十进制值为2010,我们只需要把这段改掉,就可以任意使用这个DLL了

可能有的人会说:大侠,我如果有你的源代码,我哪里还要费事去看汇编呢?

不错,我们就丢弃源代码,看看没有源代码情况下找到代码的位置(跟踪我就不说了)

用WIN32DASM 可以看到DLL输出的函数以及函数的位置,显然InitModule函数是我们主要破解入口

因为VB的源代码就是运行到这里失败的

跳转到代码位置就可以看到跟刚才一样的汇编指令了

可以了,呵呵,我们主要用OD,或Olly Ice来搞……

好,我们用Olly打开这个DLL,然后直接跳转至0x100019d0

跳转指令就随便修改:

比如改为jg 就是大于ecx才跳转,也就是说大于2010年的都不跳转了~~~~

当然,还有无耻一些的就是修改2010这个常量!

淑女训练完毕,替换原来的,当然原来的最好封存起来,而不要直接杀掉,也就是备份嘛……

好了!就这么多,,,,,

你可能感兴趣的:([哎]关于ftp扫描工具的破解问题)