a070458 发表于 2014-11-2 18:45

【吾爱破解2014CrackMe大赛】【第十一组】

本帖最后由 L4Nce 于 2014-11-3 02:03 编辑

{:1_909:}进去main 函数   吓尿了一大堆je jg jmp
还有重要的sub eax,xxxxxxx
跟踪了一下发现软件通过取出堆栈变量一个个sub如果为0 就用je跳进去执行相应的handle
{:1_909:}然后我就想到写个脚本跟踪跟踪执行顺序
然后悲剧了   脚本跑N久未跑完{:1_906:}{:1_906:}{:1_906:}
然后用IDA载入发现main函数太恐怖了 这么长,挂着IDA分析半小时貌似没分析完{:1_909:}
然后左思右想   终于找到突破口
我在想,CM已经告诉KEY要48位,
那么肯定有个跳转 比较是否是48位~~
通过ReadFile 找到key 保存的全局变量地址0x4A0000
对所有此变量的语句下段    找到这里
00478BFC   .C700 00004A00 mov dword ptr ds:,CrackMe1.004A0000 ;ASCII "21345461234"
00478C02   .89BE C01C0000 mov dword ptr ds:,edi
00478C08   .898E BC1C0000 mov dword ptr ds:,ecx
00478C0E   .8996 B81C0000 mov dword ptr ds:,edx
00478C14   .E8 478C0100   call CrackMe1.00491860                   ;                                          //strlen
00478C19   .83C4 04       add esp,0x4
00478C1C   .8B8E D4390000 mov ecx,dword ptr ds:
00478C22   .8901          mov dword ptr ds:,eax                                                               //保存长度了
00478C24   .8B86 D0390000 mov eax,dword ptr ds:
00478C2A   .8138 03000000 cmp dword ptr ds:,0x3
00478C30   .0F92C0      setb al

对esi+0x39d4下硬件访问断点,就会来到这里
00479164   .813F 30000000 cmp dword ptr ds:,0x30               //比较字符串长度是否是0x30   即 48位
0047916A   .0F95C6      setne dh
0047916D   .80E6 01       and dh,0x1
00479170   .88B6 6A3A0000 mov byte ptr ds:,dh                           //保存起来了                  
继续对esi+0x3A6A 下硬件访问断点来到

00479231   > \B8 48874192   mov eax,0x92418748
00479236   .B9 83155102   mov ecx,0x2511583
0047923B   .8A96 6A3A0000 mov dl,byte ptr ds:
00479241   .F6C2 01       test dl,0x1
00479244      0F45C1      cmovne eax,ecx                           ;                                                                  
00479247   .8986 C4390000 mov dword ptr ds:,eax


估计这就是对跳转的处理了   ~~~~
然后寻找所有相类似的代码   , 成功爆破~~~~~{:1_906:}
算法~~~~~~~~~~~~~~ 毫无头绪,尝试通过获取name和key跟踪 ,发现硬件断点不够用,跟踪出几句算法代码就不知所踪了,放弃了~{:1_908:}{:1_936:}{:1_906:}附上爆破文件




Kido 发表于 2014-11-5 13:07

最后成绩:101
评委评价:爆破有效
谢谢参与。

燃香小狼 发表于 2014-11-6 16:42

看见CMD窗口直接关电脑睡了

mi426878 发表于 2016-3-6 21:41

我又来学习了,支持

金水1975 发表于 2016-4-6 20:49

在继续,学习中{:1_925:}

hewap 发表于 2016-4-13 12:02

向大神 学习了

o6o7o5 发表于 2016-5-1 10:52

向大神 学习了!!!!!!!!!!

tds007 发表于 2016-7-2 14:41

过来学习 学习感谢分享~~

ccw89 发表于 2016-7-6 10:42


我又来学习了,支持

淡然丶 发表于 2016-7-18 11:31

{:301_992:}加油学习中~
页: [1]
查看完整版本: 【吾爱破解2014CrackMe大赛】【第十一组】