【逆向入门】 CrackMe160-002 分析思路

博客详细分析了CrackMe160-002程序的序列生成过程,从汇编代码层面探讨了如何通过Name字段生成特定的序列,并解释了涉及的函数如vbaLenBstr、imul、rtcAnsiValueBstr和vbaStrI4的作用。最后,揭示了程序通过比较用户输入的Serial与生成序列来验证的逻辑。

CrackMe160-002

爆破思路

同001,从调用堆栈找到关键函数,进入

img

稍微向上翻一下即可看到字符串(字符串前面的L说明该字符串是由Unicode编码)

img

在转储中右键->十六进制->拓展ASCII 即可查看Unicode

img

有点偏题了。。那么按照001的思路这里可以同样的爆破,就不赘述了,把重头戏还是放在序列生成比较好

序列生成

老样子,这里断点打到判断之前,不过并没有发现类似cmp这样的指令,于是乎我考虑断点再段前面一些

img

00402310 | 55 | push ebp |
00402311 | 8BEC | mov ebp,esp |
00402313 | 83EC 0C | sub esp,C |
00402316 | 68 26104000 | push <JMP.&__vbaExceptHandler> |
0040231B | 64:A1 00000000 | mov eax,dword ptr fs:[0] |
00402321 | 50 | push eax |
00402322 | 64:8925 00000000 | mov dword ptr fs:[0],esp |
00402329 | 81EC B0000000 | sub esp,B0 |
0040232F | 53 | push ebx |
00402330 | 56 | push esi |
00402331 | 8B75 08 | mov esi,dword ptr ss:[ebp+8] |
00402334 | 57 | push edi |
00402335 | 8BC6 | mov eax,esi |
00402337 | 83E6 FE | and esi,FFFFFFFE |
0040233A | 8965 F4 | mov dword ptr ss:[ebp-C],esp |
0040233D | 83E0 01 | and eax,1 |
00402340 | 8B1E | mov ebx,dword ptr ds:[esi] |
00402342 | C745 F8 08104000 | mov dword ptr ss:[ebp-8],afkayas.1.401008 |
00402349 | 56 | push esi |
0040234A | 8945 FC | mov dword ptr ss:[ebp-4],eax |
0040234D | 8975 08 | mov dword ptr ss:[ebp+8],esi |
00402350 | FF53 04 | call dword ptr ds:[ebx+4] |
00402353 | 8B83 10030000 | mov eax,dword ptr ds:[ebx+310] |
00402359 | 33FF | xor edi,edi |
0040235B | 56 | push esi |
0040235C | 897D E8 | mov dword ptr ss:[ebp-18],edi |
0040235F | 897D E4 | mov dword ptr ss:[ebp-1C],edi |
00402362 | 897D E0 | mov dword ptr ss:[ebp-20],edi |
00402365 | 897D DC | mov dword ptr ss:[ebp-24],edi |
00402368 | 897D D8 | mov dword ptr ss:[ebp-28],edi |
0040236B | 897D D4 | mov dword ptr ss:[ebp-2C],edi |
0040236E | 897D C4 | mov dword ptr ss:[ebp-3C],edi |
00402371 | 897D B4 | mov dword ptr ss:[ebp-4C],edi |
00402374 | 897D A4 | mov dword ptr ss:[ebp-5C],edi |
00402377 | 897D 94 | mov dword ptr ss:[ebp-6C],edi |
0040237A | 8985 40FFFFFF | mov dword ptr ss:[ebp-C0],eax |
00402380 | FFD0 | call eax |
00402382 | 8D4D D4 | lea

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值