假外挂之 跑跑王者 分析
本帖最后由 lkou 于 2010-10-20 20:57 编辑某人让我看是不是假的
使用帐号 asdjkl 密码 123456 就可以登陆
OD跑起后,查找字符串 您没有输入正确的Key,请联系客服进行购买
00402A45/.55 PUSH EBP 在这里下断点
00402A46|.8BEC MOV EBP,ESP
00402A48|.68 01030080 PUSH 80000301
00402A4D|.6A 00 PUSH 0
00402A4F|.68 D0070000 PUSH 7D0
00402A54|.68 01000000 PUSH 1
00402A59|.BB F0394000 MOV EBX,跑跑王者.004039F0
00402A5E|.E8 F1000000 CALL 跑跑王者.00402B54 ;
00402A63|.83C4 10 ADD ESP,10
00402A66|.68 04000080 PUSH 80000004
00402A6B|.6A 00 PUSH 0
00402A6D|.68 E4154700 PUSH 跑跑王者.004715E4 ;Key输入错误
00402A72|.68 01030080 PUSH 80000301
00402A77|.6A 00 PUSH 0
00402A79|.68 00000000 PUSH 0
00402A7E|.68 04000080 PUSH 80000004
00402A83|.6A 00 PUSH 0
00402A85|.68 F0154700 PUSH 跑跑王者.004715F0 ;您没有输入正确的Key,请联系客服进行购买
00402A8A|.68 03000000 PUSH 3
00402A8F|.BB E0354000 MOV EBX,跑跑王者.004035E0
00402A94|.E8 BB000000 CALL 跑跑王者.00402B54
00402A99|.83C4 28 ADD ESP,28
00402A9C|.8BE5 MOV ESP,EBP
00402A9E|.5D POP EBP
00402A9F\.C3 RETN
key随便输,确定后OD会断下来,返回到调用地址后没有可用信息
所以直接单步走,进入这个区段的第一个call
00402A5E|.E8 F1000000 CALL 跑跑王者.00402B54
00420120 .8D4424 08 LEA EAX,DWORD PTR SS: ;EAX=0x13EE58
00420124 .83EC 0C SUB ESP,0C ;在栈中增加空间,大小为0C字节(如EAX为双字,4字节)
00420127 .50 PUSH EAX ;0x13EE58进栈
00420128 .FF7424 14 PUSH DWORD PTR SS: ;0x1进栈 //SS段
0042012C .33C0 XOR EAX,EAX ;EAX=0,CF=0 //自身xor运算结果为0,CF=0
0042012E .894424 08 MOV DWORD PTR SS:,EAX ;SS段=0x0
00420132 .894424 0C MOV DWORD PTR SS:,EAX ;SS段=0x0
00420136 .894424 10 MOV DWORD PTR SS:,EAX ;SS段=0x0
0042013A .8D5424 08 LEA EDX,DWORD PTR SS: ;EDX=0x13EE44
0042013E .52 PUSH EDX ;0x13EE44进栈
0042013F .FFD3 CALL EBX ;程序内部调用函数 4039F0 又call到这里面去了,要进去看看
00420141 .8B4424 0C MOV EAX,DWORD PTR SS:
00420145 .8B5424 10 MOV EDX,DWORD PTR SS:
00420149 .8B4C24 14 MOV ECX,DWORD PTR SS:
0042014D .83C4 18 ADD ESP,18
00420150 .C3 RETN
004039F0 .8B4424 0C MOV EAX,DWORD PTR SS: ;EAX=0x13EE58 //SS段
004039F4 .33C9 XOR ECX,ECX ;ECX=0,CF=0 //自身xor运算结果为0,CF=0
004039F6 .8B00 MOV EAX,DWORD PTR DS: ;EAX=0x7D0 //DS段
004039F8 .85C0 TEST EAX,EAX ;ZF=0 //0x7D0&0x7D0=0x7D0
004039FA .0F9CC1 SETL CL ;CL=0 //SF<>OF时结果为1
004039FD .49 DEC ECX ;ECX=(0x0)-- //减1
004039FE .23C1 AND EAX,ECX ;EAX=0x7D0 //7D0的十进制就是2000
0403A00 .50 PUSH EAX ; /0x7D0进栈
00403A01 .FF15 B4F24600 CALL DWORD PTR DS:[<&KERNEL32.Sleep>] ; \Sleep
00403A07 .C3 RETN Sleep是按照毫秒计算,上面的2000就是2秒,之后就返回了
结果这个call
00402A5E|.E8 F1000000 CALL 跑跑王者.00402B54
只是让程序沉寂2秒,让用户以为程序在进行复杂的KEY运算,然后返回错误的KEY的提示,呵呵
附上程序,和软件官网下载的所谓key生成器,这个也是假的,有兴趣的可以自己弄弄看 做前排听讲 假东西打假 准备笔记 留名关注。 呵呵,感谢Lkou大牛的分析
不错不错.
加油. 全文完
假挂一个,软件作者还恬不知耻的说别人诋毁他,我日了,没这样骗钱的。 學習了 呵呵...新网游也很多假挂...
页:
[1]
2