完美qqip隐藏助手 1.68 简单的网络验证体系分析
完美qqip隐藏助手 1.68 简单的网络验证体系分析完美qqip隐藏助手 1.68
http://www.onlinedown.net/soft/64240.htm
这款程序的网络验证体系是比较简单的 拿出来跟大家分享下。
软件无壳 并且在OD中可以搜索到关键的ASCII字符 我们从关键字符入手 打开注册窗口 在这里下断
00403855. 68 04010000PUSH 104 ; /Arg5 = 00000104
0040385A. 50 PUSH EAX ; |Arg4
0040385B. 53 PUSH EBX ; |Arg3 => 00000000
0040385C. 68 94A24600PUSH 完美QQIP.0046A294 ; |Register
00403861. 68 90A24600PUSH 完美QQIP.0046A290 ; |QQ
00403866. 8D8C24 A00000>LEA ECX,DWORD PTR SS: ; |
0040386D. 899C24 381300>MOV DWORD PTR SS:,EBX ; |点注册后段到这里
00403874. E8 F71C0300CALL 完美QQIP.00435570 ; \完美QQIP.00435570
00403879. 3BC3 CMP EAX,EBX
0040387B. 74 37 JE SHORT 完美QQIP.004038B4 ; 这里跳走
0040387D. 8D8C24 140200>LEA ECX,DWORD PTR SS:
00403884. 68 88A24600PUSH 完美QQIP.0046A288 ; /已注册
00403889. 51 PUSH ECX ; |s1
0040388A. FF15 B0784500 CALL DWORD PTR DS:[<&MSVCRT._mbscmp>]; \_mbscmp
00403890. 83C4 08 ADD ESP,8
00403893. 85C0 TEST EAX,EAX
00403895. 75 11 JNZ SHORT 完美QQIP.004038A8 ; 很显然 之前的版本未采用网络验证时 采用的是重启验证
00403897. 53 PUSH EBX
00403898. 53 PUSH EBX
00403899. 68 5CA34600PUSH 完美QQIP.0046A35C ; 注册完成, 请重新运行软件!
0040389E. E8 E5C20400CALL <JMP.&MFC42.#1200_AfxMessageBox>
004038A3. E9 80030000JMP 完美QQIP.00403C28
中间进行了一些加密数据的传送 结果下方的比较令我们很失望 我们在这里下断:
00403B54. E8 07010000CALL 完美QQIP.00403C60 ; \上方完成了网络验证 这里做比较
00403B59. 3BC3 CMP EAX,EBX
00403B5B. 74 4C JE SHORT 完美QQIP.00403BA9 ; 这里不跳转 则向注册表写入注册信息
00403B5D. 68 88A24600PUSH 完美QQIP.0046A288 ; /已注册
00403B62. 68 94A24600PUSH 完美QQIP.0046A294 ; |Register
00403B67. 68 90A24600PUSH 完美QQIP.0046A290 ; |QQ
00403B6C. 8D8C24 980000>LEA ECX,DWORD PTR SS: ; |
00403B73. E8 48190300CALL 完美QQIP.004354C0 ; \完美QQIP.004354C0
00403B78. 8BCF MOV ECX,EDI
00403B7A. E8 E7C00400CALL <JMP.&MFC42.#2652_CCmdTarget::EndWa>
00403B7F. 53 PUSH EBX
00403B80. 53 PUSH EBX
00403B81. 68 38A34600PUSH 完美QQIP.0046A338 ; 注册成功, 请重新运行程序。
00403B86. E8 FDBF0400CALL <JMP.&MFC42.#1200_AfxMessageBox>
00403B8B. 68 88A24600PUSH 完美QQIP.0046A288 ; 已注册
00403B90. 8D4F 70 LEA ECX,DWORD PTR DS:
00403B93. E8 DABD0400CALL <JMP.&MFC42.#860_CString::operator=>
00403B98. 53 PUSH EBX
00403B99. 8BCF MOV ECX,EDI
00403B9B. C747 68 01000>MOV DWORD PTR DS:,1
00403BA2. E8 65C00400CALL <JMP.&MFC42.#6334_CWnd::UpdateData>
00403BA7. EB 25 JMP SHORT 完美QQIP.00403BCE
引用:
向注册表写入一下信息:
Windows Registry Editor Version 5.00
"Register"="已注册"
网络验证 归根结底 其实还是本地验证的一种变形模式 因为程序验证后程序一定要向本地保存注册信息 程序启动时也一定会调用注册信息进行比较验证 或者程序的某些功能调用时一定会读取保存信息 所以程序的验证算法部分仍旧在本地实现 象这种不返回网络验证数据的程序数据网验中最简单的一种 并且程序保存的是固定数值 这里是最失败的手法 呵呵,有点晕 LZ,有没附件
发来看看- -! 难道真的这么简单?太不可思议了哦。 这东西`越看越晕。 楼主太牛B拉````` 有点复杂研究下去............ sdfs f ds市场现在出现在
页:
[1]