首页
社区
课程
招聘
*已破* [PEDIY Crackme 竞赛 2007] [第四回] 第 2 队 - 不懂算法
发表于: 2007-6-15 12:03 17035

*已破* [PEDIY Crackme 竞赛 2007] [第四回] 第 2 队 - 不懂算法

2007-6-15 12:03
17035
收藏
免费 0
支持
分享
最新回复 (143)
雪    币: 328
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
76
float   ra[20][21],y[20],b[20],amps[20];   

  void   gauss()/*高斯约当法求解*/   
  {   
    int   n,np,i,j,k;   
    float   eps;   
    n=4;   
    np=n+1;eps=1e-10;   
    for(i=1;i<=n;i++)   
    {   
      deta=zu(eps,n,np,i,ra);   
      if(deta==0)   return   ;   
      for(j=i+1;j<=n;j++)   
  ra[i][j]=ra[i][j]/ra[i][i];   
      for(k=i+1;k<=n;k++)   
  for(j=i+1;j<=n;j++)   
    ra[k][j]=ra[k][j]-ra[k][i]*ra[i][j];   
    }   
    y[1]=ra[1][np]/ra[1][1];   
      for(i=2;i<=n;i++){   
      for(j=i;j<=i-1;j++)   
      a[i]=a[i]+ra[i][j]*y[j];   
      y[i]=(ra[i][np]-a[i])/ra[i][i];   
      }   
      amps[n]=y[n];   
      for(i=n-1;i>=1;i--){   
      for(j=i+1;j<=n;j++)   
  b[i]=b[i]+ra[i][j]*amps[j];   
      amps[i]=y[i]-b[i];   
      }   
   
  return   ;   
  }   
   
  void   zu(eps,n,np,i,ra)/*列主元*/   
  int   i,n,np;   
  float   ra[20][21],eps;   
  {   
    int   m,j,k;   
    float   p,alfa;   
    alfa=fabs(ra[i][i]);   
    m=i;   
    for(j=i;j<=n;j++){   
      if(fabs(ra[i][j])<alfa)   continue;   
    else   {   
    alfa=fabs(ra[j][i]);   
    m=j;   
    }   
    }   
    if(alfa<=eps)       return   0;   
    else   alfa=ra[m][j];   
    if(m==i)   return   1;   
    for(k=1;k<=np;k++)   {   
      p=ra[m][k];   
      ra[m][k]=ra[i][k];   
      ra[i][k]=p;   
    }   
  }   
   
  ra[i][j]为输入矩阵。     
  amps[i]就是输出结果。(i=1...n)   
虚伪,看这个
2007-6-15 16:41
0
雪    币: 2319
活跃值: (565)
能力值: (RANK:300 )
在线值:
发帖
回帖
粉丝
77
终于出现了,收藏
2007-6-15 16:41
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
78
厉害啊,本来也想写一个自我感觉良好的立体循环过滤函数的,看到这个竟然比我想象中的还长

晕死

天啊

my god!
2007-6-15 16:42
0
雪    币: 557
活跃值: (2303)
能力值: ( LV9,RANK:2130 )
在线值:
发帖
回帖
粉丝
79
好汗,我说怎么我这里不能运行了,开个tc不过份吧...本来打算分析下驱动,不好玩。闪之 
2007-6-15 16:44
0
雪    币: 452
活跃值: (72)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
80
00402416  |.  83FB 11       cmp ebx, 11
00402419  |.  75 3D         jnz short cr2un2.00402458

为啥每次到这里ebx的指都不一样呢?奇怪了
2007-6-15 16:46
0
雪    币: 202
活跃值: (77)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
81
有时候把大牛恶心走不失为一种策略,hoho
2007-6-15 16:48
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
82
download!!!!!!!!!!!!
2007-6-15 16:49
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
83
刚打开了Total Command 7,看见了一大堆东西,我真的恶心了一下,差点吐掉(真实情况)。
2007-6-15 16:53
0
雪    币: 55
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
84
放个去花的,我觉得驱动没啥看头,计算出的结果=0x1D8B就恭喜了
不过r3一直在发ioctl,总是断不到正常的点,不调试在vm里跑也是慢的不得了,点了验证完全没反应……
上传的附件:
2007-6-15 16:53
0
雪    币: 200
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
85
汗呀!
把 矩阵计算器 都祭出来了!
2007-6-15 16:54
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
86
我继续计算
输入好累
2007-6-15 16:57
0
雪    币: 1211
活跃值: (2870)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
87
太虚伪了   加油!!!
2007-6-15 16:58
0
雪    币: 257
活跃值: (369)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
88
劝你不要输入的说。。。。。
我给出矩阵计算器是给用得着的时候用,这个时候或许用不上。这是超定方程组,如果没有同根的两个方程,那么考虑二乘原理求解。

或许等你输入完了,才发现百忙了一阵,哈哈。很佩服太虚伪了,是FORGot吧
2007-6-15 17:03
0
雪    币: 451
活跃值: (78)
能力值: ( LV12,RANK:470 )
在线值:
发帖
回帖
粉丝
89
严重怀疑太虚伪了是某大大牛得马甲。。hoho
不懂大牛得产品真牛啊,,5个小时还没人拿得下来
看来是第一个有希望坚持3天了产品咯
2007-6-15 17:07
0
雪    币: 328
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
90
能坚持多长时间不好说,要是虚伪能基本确定取值空间,可能爆破
2007-6-15 17:10
0
雪    币: 200
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
91
本来玩驱动的人就少,驱动里面还加花指令,再看放出的方程式,不搞了,也搞不定了!
2007-6-15 17:13
0
雪    币: 328
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
92
虚伪真的很猛,估计我的那个在他手里也就1个小时
2007-6-15 17:15
0
雪    币: 263
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
93
方程见65楼
一共25行, 每一行有20个未知数X0到X19, 要求是至少21行以上满足等式关系(所以可能有4行是假的)
解出来X0到X19以后, 按acsii码依次排列XXXXXXXXXXXXXXXXXXXX
然后试试名字
pediy
XXXXXXXXXXXXXXXXXXXXE185AF10B95EC93F1

大家解方程吧~ 周末周六周日我不搞了
2007-6-15 17:25
0
雪    币: 926
活跃值: (407)
能力值: (RANK:500 )
在线值:
发帖
回帖
粉丝
94
楼上的牛啊!!
2007-6-15 17:28
0
雪    币: 95
活跃值: (419)
能力值: ( LV9,RANK:310 )
在线值:
发帖
回帖
粉丝
95
晕,这么复杂,而且弄出来也只能算一个,还差一个
2007-6-15 17:29
0
雪    币: 224
活跃值: (147)
能力值: ( LV9,RANK:970 )
在线值:
发帖
回帖
粉丝
96
公司的机器全是双核3.0的
没一台可以跑得起来
2007-6-15 17:39
0
雪    币: 1211
活跃值: (2870)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
97
如果 x〉256      怎么办 哦???~~
2007-6-15 17:52
0
雪    币: 29340
活跃值: (7884)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
98
那么方程怎么得出来的?不是注册码长度是16位吗?
00401C8E   8379 F8 10       CMP DWORD PTR DS:[ECX-8],10
00401C92   0F85 AC000000    JNZ 47F6_.00401D44

00402216   E8 95020000      CALL 47F6_.004024B0                     随机生成32个数
0040221B   90               NOP
00402228   8BCE             MOV ECX,ESI
0040222A   E8 41FBFFFF      CALL 47F6_.00401D70 //检测
0040222F   90               NOP
0040223C   8BCE             MOV ECX,ESI
0040223E   E8 9DFDFFFF      CALL 47F6_.00401FE0 //检测
00402243   84C0             TEST AL,AL
00402245   0F84 1C020000    JE 47F6_.00402467
0040224B   8BCE             MOV ECX,ESI
0040224D   E8 3EFDFFFF      CALL 47F6_.00401F90 //is debugger present
00402252   84C0             TEST AL,AL
00402254   90               NOP
00402267   8B4D DC          MOV ECX,DWORD PTR SS:[EBP-24]     code
0040226A   33D2             XOR EDX,EDX                            edx=0
0040226C   83C1 0F          ADD ECX,0F
0040226F   C745 D8 09000000 MOV DWORD PTR SS:[EBP-28],9          a1=9
00402276   8D75 8C          LEA ESI,DWORD PTR SS:[EBP-74]
00402279   894D DC          MOV DWORD PTR SS:[EBP-24],ECX
0040227C   8B45 08          MOV EAX,DWORD PTR SS:[EBP+8]
0040227F   8B40 F8          MOV EAX,DWORD PTR DS:[EAX-8]
00402282   83F8 10          CMP EAX,10
00402285   7C 05            JL SHORT 47F6_.0040228C
00402287   B8 10000000      MOV EAX,10
0040228C   3BD0            /CMP EDX,EAX
0040228E   0F8D C9000000  | JGE 47F6_.0040235D
00402294   90               NOP
004022A1   8B4D D0          MOV ECX,DWORD PTR SS:[EBP-30]
004022A4   0FBE040A         MOVSX EAX,BYTE PTR DS:[EDX+ECX]      name[edx]
004022A8   0FAF46 C0        IMUL EAX,DWORD PTR DS:[ESI-40]       T32[edx]
004022AC   0FAFC2           IMUL EAX,EDX
004022AF   90               NOP
004022E3   8B4D DC          MOV ECX,DWORD PTR SS:[EBP-24]
004022E6   0FBE09           MOVSX ECX,BYTE PTR DS:[ECX]        code[ecx]  ecx从0xF开始递减
004022E9   0FAF0E           IMUL ECX,DWORD PTR DS:[ESI]    T32[16]   从16开始递增
004022EC   0FAF4D D8        IMUL ECX,DWORD PTR SS:[EBP-28]     ecx*a1
004022F0   90               NOP
00402317   8D1CC5 00000000  LEA EBX,DWORD PTR DS:[EAX*8]       ebx=eax*8
0040231E   8D3C8D 00000000  LEA EDI,DWORD PTR DS:[ECX*4]       edi=ecx*4
00402325   2BD8             SUB EBX,EAX
00402327   03C0             ADD EAX,EAX
00402329   2BDF             SUB EBX,EDI
0040232B   2BD8             SUB EBX,EAX
0040232D   03D9             ADD EBX,ECX
0040232F   8BCB             MOV ECX,EBX
00402331   8B5D D4          MOV EBX,DWORD PTR SS:[EBP-2C]     ebx=a2
00402334   03D9             ADD EBX,ECX                       ebx=ebx+ecx
00402336   895D D4          MOV DWORD PTR SS:[EBP-2C],EBX     a2=ebx
00402339   90               NOP
00402346   8B4D DC          MOV ECX,DWORD PTR SS:[EBP-24]     
00402349   8B45 D8          MOV EAX,DWORD PTR SS:[EBP-28]     a1
0040234C   42               INC EDX
0040234D   83C6 04          ADD ESI,4
00402350   49               DEC ECX
00402351   48               DEC EAX                           a1=a1-1
00402352   894D DC          MOV DWORD PTR SS:[EBP-24],ECX
00402355   8945 D8        | MOV DWORD PTR SS:[EBP-28],EAX
00402358  ^E9 1FFFFFFF     \JMP 47F6_.0040227C
0040235D   90               NOP
0040236A   33D2             XOR EDX,EDX
0040236C   C645 E0 00       MOV BYTE PTR SS:[EBP-20],0
00402370   8955 E1          MOV DWORD PTR SS:[EBP-1F],EDX
00402373   8955 E5          MOV DWORD PTR SS:[EBP-1B],EDX
00402376   8955 E9          MOV DWORD PTR SS:[EBP-17],EDX
00402379   8955 ED          MOV DWORD PTR SS:[EBP-13],EDX
0040237C   66:8955 F1       MOV WORD PTR SS:[EBP-F],DX
00402380   8855 F3          MOV BYTE PTR SS:[EBP-D],DL
00402383   90               NOP
00402390   8BC3             MOV EAX,EBX           ebx从上面得来
00402392   99               CDQ
00402393   33C2             XOR EAX,EDX
00402395   2BC2             SUB EAX,EDX     例:eax=ebx补码=(8C90DD2)147394002
00402397   50               PUSH EAX
00402398   8D45 E0          LEA EAX,DWORD PTR SS:[EBP-20]
0040239B   68 087B4000      PUSH 47F6_.00407B08                      ; %d
004023A0   50               PUSH EAX
004023A1   FF15 60524000    CALL DWORD PTR DS:[<&msvcrt.sprintf>]    ; msvcrt.sprintf
004023A7   83C4 0C          ADD ESP,0C
004023AA   90               NOP
004023B7   8D7D E0          LEA EDI,DWORD PTR SS:[EBP-20]
004023BA   83C9 FF          OR ECX,FFFFFFFF         
004023BD   33C0             XOR EAX,EAX                    eax=0
004023BF   33F6             XOR ESI,ESI                    esi=0
004023C1   F2:AE            REPNE SCAS BYTE PTR ES:[EDI]    
004023C3   F7D1             NOT ECX            
004023C5   49               DEC ECX                        str="147394002" 
004023C6   85C9             TEST ECX,ECX                   ecx=strlen(str)
004023C8   7E 3F            JLE SHORT 47F6_.00402409       ebx=F736F22E
004023CA   90               NOP                            
004023D7   0FBE4C35 E0     /MOVSX ECX,BYTE PTR SS:[EBP+ESI-20] ecx=str[i]
004023DC   03D9           | ADD EBX,ECX
004023DE   90               NOP
004023EB   8BC3             MOV EAX,EBX
004023ED   B9 12000000      MOV ECX,12
004023F2   99               CDQ
004023F3   F7F9             IDIV ECX
004023F5   8D7D E0          LEA EDI,DWORD PTR SS:[EBP-20]
004023F8   83C9 FF          OR ECX,FFFFFFFF                ecx=FFFFFFFF
004023FB   33C0             XOR EAX,EAX                    eax=0
004023FD   46               INC ESI                        esi++
004023FE   F2:AE            REPNE SCAS BYTE PTR ES:[EDI]
00402400   F7D1             NOT ECX
00402402   49               DEC ECX                          
00402403   3BF1             CMP ESI,ECX                    ecx=strlen(str)
00402405   8BDA           | MOV EBX,EDX
00402407  ^7C C1           \JL SHORT 47F6_.004023CA
00402409   90               NOP
00402416   83FB 11          CMP EBX,11
00402419   75 3D            JNZ SHORT 47F6_.00402458   关键跳转,不跳则成功


你们讨论的方程哪来的??
2007-6-15 17:59
0
雪    币: 452
活跃值: (72)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
99
这里是骗人的,永远不可能注册成功的,呵呵
2007-6-15 18:00
0
雪    币: 244
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
100
我都看晕了...汗一把.
2007-6-15 18:09
0
游客
登录 | 注册 方可回帖
返回
//