CrackMe#46

这个CM的重点在于脱壳  和几个调试器的配合使用~

由于脱壳后代码依然加密 所以修改NAX只能外部16进制工具修改机器码实现~

Serial算法隐藏在按键过程响应中…

一组可用Key:

N/S List:
ShadowKong

2FAF27C1
UnLock:
001182102

KeyGen

CrackMe#44 lstrlenA is a joke

今天这个CM估计是XP2000以前的老东西了,在很久以前的lstrlenA函数可能和现在的不一样~那里不一样?现在的会影响除了eax之外的寄存器,或者说在我的机器上会发生这种影响(已知我从来没有修改过kernel32.dll ),如果你也遇到过这种问题的话…

总之在我的机器上调用strlenA返回值除了eax==ASCII`s Len之外 还有一点就是ecx==addr strlenA+SZIE(strlenA的函数代码宽度)

由于这点问题直接导致了我今天的困扰 所幸现在已经解决~这也就是今天这个CM的关键所在~

首先看这个CM的DASM原版:

00401654  /$  55            push    ebp
00401655  |.  8BEC          mov     ebp, esp
00401657  |.  51            push    ecx
00401658  |.  57            push    edi
00401659  |.  52            push    edx
0040165A  |.  56            push    esi
0040165B  |.  33C9          xor     ecx, ecx
0040165D  |.  8B7D 08       mov     edi, dword ptr [ebp+8]
00401660  |.  FF75 08       push    dword ptr [ebp+8]                ; /String
00401663  |.  E8 FC000000   call    <jmp.&KERNEL32.lstrlenA>         ; \lstrlenA

继续阅读“CrackMe#44 lstrlenA is a joke”