欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

使用中再发现一些问题,现在补充一下! (1千字)

使用中再发现一些问题,现在补充一下! (1千字)

使用了几次发现这个程序还有几个很黑的暗桩,写出来和大家交流一下

:004F6CD2 E8E5C8F0FF              call 004035BC〈--以使用次数为参数的运算
:004F6CD7 83F803                  cmp eax, 00000003
:004F6CDA 0F8512080000            jne 004F74F2〈--如出口参数EAX不等于3就跳过程序再次检测密码
:004F6CE0 8BC3                    mov eax, ebx
:004F6CE2 E8F10C0000              call 004F79D8
:004F6CE7 E906080000              jmp 004F74F2
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004F6C57(C)
|
:004F6CEC 8D55F4                  lea edx, dword ptr [ebp-0C]
:004F6CEF 8B45FC                  mov eax, dword ptr [ebp-04]
:004F6CF2 E855FAFFFF              call 004F674C

其实程序要经过很多个地方(使用很多种算法)检测密码的,
每一个正确都是会使程序跳到004F74F2的,
我们从下面这段文字就能看到了
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004F6CDA(C), :004F6CE7(U), :004F6DA1(C), :004F6DAE(U), :004F6E5D(C)
|:004F6E6A(U), :004F6F19(C), :004F6F26(U), :004F6FD5(C), :004F6FE2(U)
|:004F7091(C), :004F709E(U), :004F7152(C), :004F7158(U), :004F7207(C)
|:004F7214(U), :004F72C1(C), :004F72CE(U), :004F737D(C), :004F738A(U)
|
:004F74F2 33C0                    xor eax, eax
:004F74F4 5A                      pop edx
但我们只需要把第一个比较的地方改为跳就可了
也就是把
:004F6CDA            jne 004F74F2
改为
:004F6CDA            jmp 004F74F2
再补上一个NOP(使程序字节数一样)就能破解掉这些暗桩了

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功