初學者請進(一篇破解javagirl的心得) (2千字)

看雪資料發表於2000-05-09

=====呼吸小秘(javegirl)的破解過程。
軟體介紹:這是一個做主頁特效的小軟體。軟體不註冊有功能限制,
感覺其註冊檢測部分同人物生物節律有點相像,不提示出錯資訊!
======這個軟體用aspack1.06版壓過,我用prodump脫的殼!
軟體將註冊資訊寫入登錄檔
    HKEY_USER / SOFTWARE/ BREATHSOFT/ 註冊/ javagirl下 ,
每次啟動時都做比較。註冊碼與註冊名無關,但必須是13位,而且只
要前8位是BSJG08SN,後5位就可以任意啦!
======破解過程:
1、trw2000載入脫殼後的javagirl.exe
2、填寫註冊資訊,name:yubing
                code:78787878 
&我第一次追時按習慣只輸入了8位的註冊碼,後來發現不對,又改為13位,
請注意聽,我會慢慢地分析:-)
3、下ctrl-d,進入trw,下
:bpx hmemcpy
:g
4、按“註冊鍵”,程式立即被攔,下指令
:bc *
:pmodule
5、按F10,只到如下程式:
0167:0049A329  MOV EAX,[EBP-04] &下 d eax 可看到你輸入的注                        冊碼78787878
0167:0049A32C  CALL 00403C00       
0167:0049A331  CMP  EAX,BYTE+0D    &此時eax中為註冊碼個數(8個), 是否為13位。
                JNZ  NEAR 0049A4AF  &如果不相等,則出錯。
                LEA  EAX,[EBP-04]  
                PUSH EAX
            。。。。。。。
           
0167:0049A36C  MOV  EAX,[EAX+0508]
0167:0049A372  CALL  0043BAA8
0167:0049A377  MOV  EDX,[EBP-08]    &下d edx 可見到註冊碼                        BSJG08SN
              POP  EAX      &下d eax 可見到輸入註冊碼的前8位。
        CALL 00403D10 &比較註冊碼的核心喲,f8追入!
        JNZ  NEAR 0049A4AF  &不相等則出錯。
      。。。。。。。。
         
6、看註冊碼比較的部分call 00403D10
0167:00403D10    PUSH EBX
                  PUSH ESI
                  PUSH EDI
                  MOV ESI,EAX      &下 d eax為你輸入的註冊碼 
                  MOV EDI,EDX            &下 d edx為正確的註冊碼
                  CMP EAX,EDX            &比較註冊碼.
0167:00403d19    JZ NEAR 00403DAE      &相等,則跳轉喲,一定要跳喲。
      ...................(略)
7、至此程式追蹤完成,由於註冊碼必須是13位,所以我們前8位輸入BSJG08SN
之後,還必須要任意填5位。


                 cracker:十三少
             scyb@sina.com
             http://scyb.yeah.net   

相關文章