通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
Extra Drive Pro算法分析历程
责任编辑:酷酷の鱼   更新日期:2008-1-2
 

【文章标题】:Extra Drive Pro算法分析历程
【文章作者】: 小娃崽
【作者邮箱】: wanzailuan@yahoo.com.cn
【软件名称】: Extra Drive Pro
【下载地址】: http://www.skycn.com/soft/19661.html
【加壳方式】: ASPACK
【编写语言】: LCC Win32 1.x -> Jacob Navia
【使用工具】: OLLYDBG
【操作平台】: XP+SP2
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
  下断bp GetWindowTextA,我输入的注册码是"112233445566778899"
  004176F3  |.  68 04010000   push    104                              ; /Count = 104 (260.)
  004176F8  |.  8DBD F4FEFFFF lea     edi, dword ptr [ebp-10C]         ; |
  004176FE  |.  57            push    edi                              ; |Buffer
  004176FF  |.  50            push    eax                              ; |hWnd
  00417700  |.  E8 6F250100   call         ; \GetWindowTextA
  00417705  |.  80BD F4FEFFFF>cmp     byte ptr [ebp-10C], 0            ;  这里比较注册码是否为空
  0041770C  |.  0F84 27010000 je      00417839
  00417712  |.  8DBD ECFDFFFF lea     edi, dword ptr [ebp-214]
  00417718  |.  8D35 61204500 lea     esi, dword ptr [452061]
  0041771E  |.  B9 41000000   mov     ecx, 41
  00417723  |.  F3:A5         rep     movs dword ptr es:[edi], dword p>
  00417725  |.  8D85 F4FEFFFF lea     eax, dword ptr [ebp-10C]
  0041772B  |.  50            push    eax
  0041772C  |.  8D85 ECFDFFFF lea     eax, dword ptr [ebp-214]
  00417732  |.  50            push    eax
  00417733  |.  E8 38EF0000   call    00426670
  00417738  |.  8D8D F4FEFFFF lea     ecx, dword ptr [ebp-10C]
  0041773E  |.  83C8 FF       or      eax, FFFFFFFF
  00417741  |>  40            /inc     eax
  00417742  |.  803C01 00     |cmp     byte ptr [ecx+eax], 0
  00417746  |.^ 75 F9         \jnz     short 00417741
  00417748  |.  89C7          mov     edi, eax                         ;  EAX在这里返回的是注册码位数
  0041774A  |.  83EF 0F       sub     edi, 0F                          ;  位数-0F
  0041774D  |.  89BD E8FDFFFF mov     dword ptr [ebp-218], edi
  00417753  |.  8B85 E8FDFFFF mov     eax, dword ptr [ebp-218]         ;eax=位数-0F=3
  00417759  |.  8D8405 F4FEFF>lea     eax, dword ptr [ebp+eax-10C]     ;  "233445566778899",呵呵,就是注册码的后15位拉!
  00417760  |.  50            push    eax
  00417761  |.  E8 1B62FFFF   call    0040D981                         ;关键CALL1
  00417766  |.  83C4 04       add     esp, 4
  00417769  |.  8985 E4FDFFFF mov     dword ptr [ebp-21C], eax         ;  注意这里EAX返回值
  0041776F  |.  8B85 E8FDFFFF mov     eax, dword ptr [ebp-218]
  00417775  |.  C68405 ECFDFF>mov     byte ptr [ebp+eax-214], 0
  0041777D  |.  8D85 ECFDFFFF lea     eax, dword ptr [ebp-214]
  00417783  |.  50            push    eax                              ;  "112",这里是被截取掉的注册码部分拉!
  00417784  |.  E8 DFC50000   call    00423D68                         ; 关键CALL2
  00417789  |.  83C4 04       add     esp, 4
  0041778C  |.  8995 DCFDFFFF mov     dword ptr [ebp-224], edx
  00417792  |.  8985 D8FDFFFF mov     dword ptr [ebp-228], eax         ;  注意这里的EAX返回值
  00417798  |.  8BBD D8FDFFFF mov     edi, dword ptr [ebp-228]
  0041779E  |.  89BD E0FDFFFF mov     dword ptr [ebp-220], edi
  004177A4  |.  8B85 E0FDFFFF mov     eax, dword ptr [ebp-220]
  004177AA  |.  3985 E4FDFFFF cmp     dword ptr [ebp-21C], eax         ; 这里是关键CALL1,CALL2的返回值进行的比较
  004177B0      0F85 83000000 jnz     00417839                         ;  爆破点
  
  
  /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  关键CALL1:
  0040D981  /$Content$nbsp; 53            push    ebx
  0040D982  |.  56            push    esi
  0040D983  |.  57            push    edi
  0040D984  |.  8B7424 10     mov     esi, dword ptr [esp+10]                      ;  注册码2到ESI
  0040D988  |.  89F1          mov     ecx, esi
  0040D98A  |.  83C8 FF       or      eax, FFFFFFFF
  0040D98D  |>  40            /inc     eax
  0040D98E  |.  803C01 00     |cmp     byte ptr [ecx+eax], 0
  0040D992  |.^ 75 F9         \jnz     short 0040D98D
  0040D994  |.  89C3          mov     ebx, eax                                     ;  上面的循环返回注册码2的位数
  0040D996  |.  BF FFFFFFFF   mov     edi, -1                                      ;  EDI=-1
  0040D99B  |.  EB 22         jmp     short 0040D9BF
  0040D99D  |>  89F0          /mov     eax, esi
  0040D99F  |.  46            |inc     esi
  0040D9A0  |.  0FBE10        |movsx   edx, byte ptr [eax]                         ;  注册码第1位到EDX
  0040D9A3  |.  89F9          |mov     ecx, edi
  0040D9A5  |.  31D1          |xor     ecx, edx                                    ;  注册码第1位和-1进行xor运算
  0040D9A7  |.  89CA          |mov     edx, ecx                                    ;  结果到EDX
  0040D9A9  |.  81E2 FF000000 |and     edx, 0FF                                    ;  与0FF进行and运算
  0040D9AF  |.  8B1495 C0FF44>|mov     edx, dword ptr [edx*4+44FFC0]               ;这里的EDX中的值就要查表了。。
  0040D9B6  |.  89F9          |mov     ecx, edi
  0040D9B8  |.  C1E9 08       |shr     ecx, 8
  0040D9BB  |.  89D7          |mov     edi, edx
  0040D9BD  |.  31CF          |xor     edi, ecx                                    ;  EDI=EDI XOR ECX
  0040D9BF  |>  89D8           mov     eax, ebx
  0040D9C1  |.  4B            |dec     ebx
  0040D9C2  |.  09C0          |or      eax, eax
  0040D9C4  |.^ 7F D7         \jg      short 0040D99D
  0040D9C6  |.  83F7 FF       xor     edi, FFFFFFFF
  0040D9C9  |.  89F8          mov     eax, edi                                     ;  返回值在这里了
  0040D9CB  |.  5F            pop     edi
  0040D9CC  |.  5E            pop     esi
  0040D9CD  |.  5B            pop     ebx
  0040D9CE  \.  C3            retn
表在这里了:
0044FFC4  96 30 07 77 2C 61 0E EE BA 51 09 99 19 C4 6D 07  ?眇愬?冺餉??
0044FFD4  8F F4 6A 70 35 A5 63 E9 A3 95 64 9E 32 88 DB 0E  ?灪??閣鹤蠲?
0044FFE4  A4 B8 DC 79 1E E9 D5 E0 88 D9 D2 97 2B 4C B6 09  ?秜??韒??
0044FFF4  BD 7C B1 7E 07 2D B8 E7 91 1D BF 90 64 10 B7 1D  粽纱??邿??
00450004  F2 20 B0 6A 48 71 B9 F3 DE 41 BE 84 7D D4 DA 1A  ?檰煈??蒾??
00450014  EB E4 DD 6D 51 B5 D4 F4 C7 85 D3 83 56 98 6C 13  淝??藇菓顖?
00450024  C0 A8 6B 64 7A F9 62 FD EC C9 65 8A 4F 5C 01 14  ?摫梁??詥屏?
00450034  D9 6C 06 63 63 3D 0F FA F5 0D 08 8D C8 20 6E 3B  泙挆?﨏?贈??
00450044  5E 10 69 4C E4 41 60 D5 72 71 67 A2 D1 E4 03 3C  ????煲??
00450054  47 D4 04 4B FD 85 0D D2 6B B5 0A A5 FA A8 B5 35  ??藽?????
00450064  6C 98 B2 42 D6 C9 BB DB 40 F9 BC AC E3 6C D8 32  顬???鹿?泣?
00450074  75 5C DF 45 CF 0D D6 DC 59 3D D1 AB AC 30 D9 26  屵?????ガ?
00450084  3A 00 DE 51 80 51 D7 C8 16 61 D0 BF B5 F4 B4 21  :凞冀?愖???
00450094  23 C4 B3 56 99 95 BA CF 0F A5 BD B8 9E B8 02 28  ?嚳閙?????
004500A4  08 88 05 5F B2 D9 0C C6 24 E9 0B B1 87 7C 6F 2F  蠈弅????粇?
004500B4  11 4C 68 58 AB 1D 61 C1 3D 2D 66 B6 90 41 DC 76  ?塨?????盜
004500C4  06 71 DB 01 BC 20 D2 98 2A 10 D5 EF 89 85 B1 71  焆ǜ?飒??薉熱
004500D4  1F B5 B6 06 A5 E4 BF 9F 33 D4 B8 E8 A2 C9 07 78  ??????砇
004500E4  34 F9 00 0F 8E A8 09 96 18 98 0E E1 BB 0D 6A 7F  老??阉領?罪
004500F4  2D 3D 6D 08 97 6C 64 91 01 5C 63 E6 F4 51 6B 6B  ??沗酤封凴歫
00450104  62 61 6C 1C D8 30 65 85 4E 00 62 F2 ED 95 06 6C  慢?ヘ蕥N?闭氆
00450114  7B A5 01 1B C1 F4 08 82 57 C4 0F F5 C6 D9 B0 65  ???興???新
00450124  50 E9 B7 12 EA B8 BE 8B 7C 88 B9 FC DF 1D DD 62  ???设衼??拝
00450134  49 2D DA 15 F3 7C D3 8C 65 4C D4 FB 58 61 B2 4D  ??糳賓??慘?
00450144  CE 51 B5 3A 74 00 BC A3 E2 30 BB D4 41 A5 DF 4A  凎?t?モ???
00450154  D7 95 D8 3D 6D C4 D1 A4 FB F4 D6 D3 6A E9 69 43  闗???????
00450164  FC D9 6E 34 46 88 67 AD D0 B8 60 DA 73 2D 04 44  ??衆?????
00450174  E5 1D 03 33 5F 4C 0A AA C9 7C 0D DD 3C 71 05 50  ????糉?焼倅
00450184  AA 41 02 27 10 10 0B BE 86 20 0C C9 25 B5 68 57  ???????坨
00450194  B3 85 6F 20 09 D4 66 B9 9F E4 61 CE 0E F9 DE 5E  薳????癩廞
004501A4  98 C9 D9 29 22 98 D0 B0 B4 A8 D7 C7 17 3D B3 59  ??頢????妳
004501B4  81 0D B4 2E 3B 5C BD B7 AD 6C BA C0 20 83 B8 ED  ??尻?沭?茠?
004501C4  B6 B3 BF 9A 0C E2 B6 03 9A D2 B1 74 39 47 D5 EA  ?骿ζ?璱??
004501D4  AF 77 D2 9D 15 26 DB 04 83 16 DC 73 12 0B 63 E3  瞯鷒???珜?
004501E4  84 3B 64 94 3E 6A 6D 0D A8 5A 6A 7A 0B CF 0E E4  ?鑤樾??#123;穪?
004501F4  9D FF 09 93 27 AE 00 0A B1 9E 07 7D 44 93 0F F0  ?鋉??麱紇鍄?
00450204  D2 A3 08 87 68 F2 01 1E FE C2 06 69 5D 57 62 F7  ?蜈???椆坝?
00450214  CB 67 65 80 71 36 6C 19 E7 06 6B 6E 76 1B D4 FE  柋聥???湫??
00450224  E0 2B D3 89 5A 7A DA 10 CC 4A DD 67 6F DF B9 F9  ?觓穚??柝?惡
00450234  F9 EF BE 8E 43 BE B7 17 D5 8E B0 60 E8 A3 D6 D6  ?躾??軕悰??
00450244  7E 93 D1 A1 C4 C2 D8 38 52 F2 DF 4F F1 67 BB D1  鍾????俟柱?
00450254  67 57 BC A6 DD 06 B5 3F 4B 36 B2 48 DA 2B 0D D8  坧???????
00450264  4C 1B 0A AF F6 4A 03 36 60 7A 04 41 C3 EF 60 DF  ????穠???
00450274  55 DF 67 A8 EF 8E 6E 31 79 BE 69 46 8C B3 61 CB  ??軯?????
00450284  1A 83 66 BC A0 D2 6F 25 36 E2 68 52 95 77 0C CC  茚??╯剨瞕?
00450294  03 47 0B BB B9 16 02 22 2F 26 05 55 BE 3B BA C5  ?????唅??
004502A4  28 0B BD B2 92 5A B4 2B 04 6A B3 5C A7 FF D7 C2  ??媒?樄岳??
004502B4  31 CF D0 B5 8B 9E D9 2C 1D AE DE 5B B0 C2 64 9B  ??麋??寞?魤
004502C4  26 F2 63 EC 9C A3 6A 75 0A 93 6D 02 A9 06 09 9C  ???番錊??鰉
004502D4  3F 36 0E EB 85 67 07 72 13 57 00 05 82 4A BF 95  ??枅_k圓??閿
004502E4  14 7A B8 E2 AE 2B B1 7B 38 1B B6 0C 9B 8E D2 92  稔?箱??躛鋒
004502F4  0D BE D5 E5 B7 EF DC 7C 21 DF DB 0B D4 D2 D3 86  ??糜???蛓
00450304  42 E2 D4 F1 F8 B3 DD 68 6E 83 DA 1F CD 16 BE 81  ??棝荮??膾
00450314  5B 26 B9 F6 E1 77 B0 6F 77 47 B7 18 E6 5A 08 88  ??矡澰??嫦蠈
00450324  70 6A 0F FF CA 3B 06 66 5C 0B 01 11 FF 9E 65 8F  橰/?昆??黿轥
00450334  69 AE 62 F8 D3 FF 6B 61 45 CF 6C 16 78 E2 0A A0  ???慫???
00450344  EE D2 0D D7 54 83 04 4E C2 B3 03 39 61 26 67 A7  ??荔丄????
00450354  F7 16 60 D0 4D 47 69 49 DB 77 6E 3E 4A 6A D1 AE  ????矛?橊?
00450364  DC 5A D6 D9 66 0B DF 40 F0 3B D8 37 53 AE BC A9  嫜???????
00450374  C5 9E BB DE 7F CF B2 47 E9 FF B5 30 1C F2 BD BD  黅????サ??
00450384  8A C2 BA CA 30 93 B3 53 A6 A3 B4 24 05 36 D0 BA  ??錰厳????
00450394  93 06 D7 CD 29 57 DE 54 BF 67 D9 23 2E 7A 66 B3  ??圩哞枿?種?
004503A4  B8 4A 61 C4 02 1B 68 5D 94 2B 6F 2A 37 BE 0B B4  ???嵨????
004503B4  A1 8E 0C C3 1B DF 05 5A 8D EF 02 2D              躡??娅??

[1] [2] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    固顶文章 爱国者安全网2007年度优秀版主评选
    普通文章 瑞星公司01月11日发布 每日计算机病毒及木马播报
    普通文章 破解博彩神助(专注彩票) V2.8.01
    推荐文章 推荐:跨站脚本执行漏洞代码的六点思路
    普通文章 Windows系统下的远程堆栈溢出 实战篇
    普通文章 Windows系统下的远程堆栈溢出 原理篇
    普通文章 MsSQLServer是如何加密口令的
    普通文章 浅谈国内的渗透评估过程
    普通文章 Dvbbs8.1 0DAY(通杀Access和mssql版本)
    普通文章 微软:我们的代码比赛门铁克更安全
    热门文章
    普通文章REAL蛀虫利用播放器漏洞下载恶意程序
    普通文章李彦宏:中国要在互联网领域逐渐超越美国
    普通文章马云:阿里巴巴的成功是一个生态链的成功
    普通文章Ingres用户认证非授权访问漏洞
    普通文章TCPreen FD_SET()函数远程栈溢出漏洞
    普通文章Winace UUE文件解压堆溢出漏洞
    普通文章Pclxav木马猎手第一代特征码引擎源代码
    普通文章IE收藏夹管理小精灵算法分析
    普通文章Extra Drive Pro算法分析历程
    普通文章雨过天晴自我注册
    精彩专题