标题:丸子,我不太懂,解说一下吧!
作者:★☆★
时间:2/26 09:05
}
就是说,函数00456718要被调用很多次,这个次数就是ESI+04的值,用D ESI+04命令来查看其值,天哪!这不是matrix.cnt的内容吗?(你原先在二进制编辑器中己经打开过此文件并且看到过它的内容)而ESI+04正是matrix.cnt的前4个字节!我们现在有足够的理由相信,密码被加密成了128位(即16个字节),且加密函数存在于函数00456718中!
抬起眼睛看一下,在函数0046C256中,一开始也调用了一次00456718函数!为了再进一步地证实我们的设想,让我们再重新运行OICQ,输入一个错误的密码,但这次你输入的密码长度最好和正确密码的长度相同,在第一次调用00456718前设下一个断点:
:0046C265 mov esi, ecx
:0046C267 mov eax, dword ptr [ebp+08]
:0046C26A and dword ptr [ebp-04], 00000000----->在这里设一个断点
:0046C26E push [eax-08]
:0046C271 push eax
:0046C272 lea eax, dword ptr [ebp-1C]
:0046C275 push eax
:0046C276 call 00456718
当程序运行至断点处时,查看各个寄存器的值,你在EAX里看到了什么?是的,EAX里面是你输入的密码,你用这个密码进行登录,程序将出现密码错误的信息,但是,如果你此时修改一下EAX的值,把它 ..
下页 上页
回复本帖|发新话题
回复列表 (9)
#1 !不安全啊
[★龙神★ 2/26 10:23]
#2 我也知道啊,所以才想学的啊!
[★☆★ 2/26 10:38]
#3 都是编码
[醉老 2/26 17:54]
#4 倒~不是啦,英文学好点再学吧!
[★☆★ 2/27 08:50]
#5 你别再发表这种东西了
[醉老 2/27 11:49]
#6 不发表了,反正也看不懂!
[★☆★ 2/27 11:50]
#7 这个和E文有多大关系啊?
[朋友别哭 3/1 10:17]
#8 @_@
[cool 3/2 04:54]
#9 这是靖哥哥说的啦!
[★☆★ 3/2 17:54]
<<下一主题
>>上一主题
返回版块