找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 11786|回复: 16

我的破解可真是菜啊

 火... [复制链接]

47

主题

265

回帖

8

精华

核心会员

积分
10349
发表于 2011-5-18 22:32:48 | 显示全部楼层 |阅读模式
本帖最后由 ywledoc 于 2011-5-18 22:34 编辑

一道最简单的题,硬是破了4、5个小时没破出来。
逆估计都快逆全了~
求包养啊~

上传一份,求教育~不爆破,求注册码~
crackme01_0.rar (241.01 KB, 下载次数: 7666)

网址是这个:http://iscc2011.isclab.org/challenge/2011/crack/1
北京理工的一个信息安全比赛~~~

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2011-5-18 23:01:21 | 显示全部楼层
看过简单破解教程的路过。

1

主题

14

回帖

0

精华

铜牌会员

积分
144
发表于 2011-5-19 00:14:34 | 显示全部楼层
不是一般的简单,没保护壳,没反调试,字符串没加密,还有什么问题??

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 10:05:05 | 显示全部楼层
回复 mingyuan 的帖子

找不到字符串的表示很纠结。。。。

1

主题

14

回帖

0

精华

铜牌会员

积分
144
发表于 2011-5-19 10:09:20 | 显示全部楼层
1.jpg

00401004   .  55            PUSH EBP
00401005   .  8BEC          MOV EBP,ESP
00401007   .  81EC 10000000 SUB ESP,10
0040100D   >  6A FF         PUSH -1
0040100F   .  6A 08         PUSH 8
00401011   .  68 03000116   PUSH 16010003
00401016   .  68 01000152   PUSH 52010001
0040101B   .  E8 48010000   CALL crackme0.00401168
00401020   .  83C4 10       ADD ESP,10
00401023   .  8945 FC       MOV DWORD PTR SS:[EBP-4],EAX
00401026   .  68 04000080   PUSH 80000004
0040102B   .  6A 00         PUSH 0
0040102D   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
00401030   .  85C0          TEST EAX,EAX
00401032   .  75 05         JNZ SHORT crackme0.00401039
00401034   .  B8 509B4600   MOV EAX,crackme0.00469B50
00401039   >  50            PUSH EAX
0040103A   .  68 01000000   PUSH 1
0040103F   .  BB D0114000   MOV EBX,crackme0.004011D0
00401044   .  E8 13010000   CALL crackme0.0040115C
00401049   .  83C4 10       ADD ESP,10
0040104C   .  8945 F8       MOV DWORD PTR SS:[EBP-8],EAX
0040104F   .  8B5D FC       MOV EBX,DWORD PTR SS:[EBP-4]
00401052   .  85DB          TEST EBX,EBX
00401054   .  74 09         JE SHORT crackme0.0040105F
00401056   .  53            PUSH EBX
00401057   .  E8 06010000   CALL crackme0.00401162
0040105C   .  83C4 04       ADD ESP,4
0040105F   >  E8 88000000   CALL crackme0.004010EC
00401064   .  3945 F8       CMP DWORD PTR SS:[EBP-8],EAX
00401067   .  0F85 40000000 JNZ crackme0.004010AD
0040106D   .  68 04000080   PUSH 80000004
00401072   .  6A 00         PUSH 0
00401074   .  68 519B4600   PUSH crackme0.00469B51                   ;  努力
00401079   .  68 01030080   PUSH 80000301
0040107E   .  6A 00         PUSH 0
00401080   .  68 40000000   PUSH 40
00401085   .  68 04000080   PUSH 80000004
0040108A   .  6A 00         PUSH 0
0040108C   .  68 569B4600   PUSH crackme0.00469B56                   ;  注册成功
00401091   .  68 03000000   PUSH 3
00401096   .  BB D0134000   MOV EBX,crackme0.004013D0
0040109B   .  E8 BC000000   CALL crackme0.0040115C
004010A0   .  83C4 28       ADD ESP,28
004010A3   .  E9 40000000   JMP crackme0.004010E8
004010A8   .^ E9 60FFFFFF   JMP crackme0.0040100D
004010AD   >  68 04000080   PUSH 80000004
004010B2   .  6A 00         PUSH 0
004010B4   .  68 5F9B4600   PUSH crackme0.00469B5F                   ;  加油
004010B9   .  68 01030080   PUSH 80000301
004010BE   .  6A 00         PUSH 0
004010C0   .  68 40000000   PUSH 40
004010C5   .  68 04000080   PUSH 80000004
004010CA   .  6A 00         PUSH 0
004010CC   .  68 649B4600   PUSH crackme0.00469B64                   ;  注册失败
004010D1   .  68 03000000   PUSH 3
004010D6   .  BB D0134000   MOV EBX,crackme0.004013D0
004010DB   .  E8 7C000000   CALL crackme0.0040115C
004010E0   .  83C4 28       ADD ESP,28
004010E3   .  E8 04000000   CALL crackme0.004010EC
004010E8   >  8BE5          MOV ESP,EBP
004010EA   .  5D            POP EBP
004010EB   .  C3            RETN

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 10:14:56 | 显示全部楼层
回复 mingyuan 的帖子

这个我知道~但是注册码呢?要的是注册码啊~~

1

主题

14

回帖

0

精华

铜牌会员

积分
144
发表于 2011-5-19 17:58:24 | 显示全部楼层
注册码:2011
核心算法:
00449B59  |> /833D 50484800>/CMP DWORD PTR DS:[484850],1
00449B60  |. |7E 0C         |JLE SHORT crackme0.00449B6E
00449B62  |. |6A 04         |PUSH 4
00449B64  |. |56            |PUSH ESI
00449B65  |. |E8 38710000   |CALL crackme0.00450CA2
00449B6A  |. |59            |POP ECX
00449B6B  |. |59            |POP ECX
00449B6C  |. |EB 0B         |JMP SHORT crackme0.00449B79
00449B6E  |> |A1 44464800   |MOV EAX,DWORD PTR DS:[484644]
00449B73  |. |8A0470        |MOV AL,BYTE PTR DS:[EAX+ESI*2]
00449B76  |. |83E0 04       |AND EAX,4
00449B79  |> |85C0          |TEST EAX,EAX
00449B7B  |. |74 0D         |JE SHORT crackme0.00449B8A
00449B7D  |. |8D049B        |LEA EAX,DWORD PTR DS:[EBX+EBX*4]
00449B80  |. |8D5C46 D0     |LEA EBX,DWORD PTR DS:[ESI+EAX*2-30]
00449B84  |. |0FB637        |MOVZX ESI,BYTE PTR DS:[EDI]
00449B87  |. |47            |INC EDI                                 ;  crackme0.00487C48
00449B88  |.^\EB CF         \JMP SHORT crackme0.00449B59

004010EC  /$  55            PUSH EBP
004010ED  |.  8BEC          MOV EBP,ESP
004010EF  |.  81EC 04000000 SUB ESP,4
004010F5  |.  C745 FC 00000>MOV DWORD PTR SS:[EBP-4],0
004010FC  |.  C745 FC DB070>MOV DWORD PTR SS:[EBP-4],7DB
00401103  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
00401106  |.  E9 00000000   JMP crackme0.0040110B
0040110B  |>  8BE5          MOV ESP,EBP
0040110D  |.  5D            POP EBP

00401064   .  3945 F8       CMP DWORD PTR SS:[EBP-8],EAX
00401067   .  0F85 40000000 JNZ crackme0.004010AD

评分

参与人数 2水晶币 +110 收起 理由
马大哈 + 100 学习了!
ywledoc + 10 谢谢~

查看全部评分

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 18:28:01 | 显示全部楼层
回复 mingyuan 的帖子

同学你好帅~

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 18:30:42 | 显示全部楼层
回复 mingyuan 的帖子

我只能说,我跟进去了,但是没跟出来~~多谢啦~

1

主题

14

回帖

0

精华

铜牌会员

积分
144
发表于 2011-5-19 18:48:54 | 显示全部楼层
顺便贴个C写的算法
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//////////////////////////////////////////////////////////////////////////
//获得一个数字串的值(通过一定的计算)
int GetTheCodeString(char cstring[],int n)
{
        int i =0;
        int result =0;
        for(i=0;i<n;i++)
        {
                result =cstring[i]-0x30 + 10*result ;
        }
        return result ;
}

void main()
{
        int istrlen =0 ;                //待计算字符串的长度
        int iequvalue =0x7db ;        //固定值
        int icountmax =0;                //最大字符个数
        char cstring[128] ;
        //////////////////////////////////////////////////////////////////////////
        //首先得到数字串的最大个数
        memset(cstring,0,128) ;
        cstring[0] ='1' ;
        icountmax =1 ;
        while (GetTheCodeString(cstring,icountmax)<=iequvalue)
        {
                //当该数字串计算出来的值小于固定值
                cstring[icountmax] ='1' ;
                icountmax ++ ;
        }
        //////////////////////////////////////////////////////////////////////////
        //初始化操作
        memset(cstring,0,128);
        long lresult =0;
        while ( true)
        {
                //////////////////////////////////////////////////////////////////////////
                //首先判断是否继续
                if (strlen(cstring) > icountmax)
                {
                        //直接跳出
                        break;
                }
                //////////////////////////////////////////////////////////////////////////
                //将lresult 转换成 char[]
                //清空缓冲区
                memset(cstring,0,128) ;
                itoa(lresult,cstring,10) ;
                //////////////////////////////////////////////////////////////////////////
                //判断是否和固定值相等,如果相等那个显示出来
                int imyresult =GetTheCodeString(cstring,strlen(cstring)) ;
                if ( imyresult==iequvalue)
                {
                        printf("%s \r\n",cstring) ;
                }
                //////////////////////////////////////////////////////////////////////////
                //对数字串增加数据处理
                lresult ++ ;
        }
        system("pause") ;
}

评分

参与人数 1 +6 水晶币 +10 +10 收起 理由
ywledoc + 6 + 10 + 10 兄台好功力~

查看全部评分

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 19:25:11 | 显示全部楼层
回复 mingyuan 的帖子

{:3_50:}0X7DB...................从我眼皮底下过去N次。。。。就是没把他当注册码~~~

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 19:27:16 | 显示全部楼层
主要原因是没有把算码那部分弄明白,保存来保存去,最后把地址给弄丢了

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-5-19 21:45:51 | 显示全部楼层
回复 mingyuan 的帖子

谢谢啦~你的第一题~让我今天晚上把破解关全部给过了~

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2011-5-20 10:47:50 | 显示全部楼层
{:3_48:}帅,我以前只看过简单的破解教程,唯一的目的就是方便我跟踪VB的程序....
我就是嗷嗷叫的老马了......

3

主题

22

回帖

0

精华

初来乍到

积分
12
发表于 2011-7-5 17:43:29 | 显示全部楼层
的确简单!

47

主题

265

回帖

8

精华

核心会员

积分
10349
 楼主| 发表于 2011-7-5 17:50:20 | 显示全部楼层
ty0625 发表于 2011-7-5 17:43
的确简单!

是很简单~

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2011-7-6 00:50:49 | 显示全部楼层
很多问题搞定后才知道简单,但要知道它简单的过程,却不简单.........

记得有个笑话,有关一个生产肥皂的生产线的.这种生产线有点小BUG,就是偶尔会有空盒子出现在最终区域.

某大厂就组织了博士还是啥的一帮人才,花了几个月,几十还是上百万,又是X光又是机械手的,完美搞定.

某小厂呢,老板让工人搞定,工人就盯着生产线看了半天,搬来一台大功率风扇,把空盒子吹下来了,完美搞定~~~~~
我就是嗷嗷叫的老马了......

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表