TRW短篇教學 (6千字)

看雪資料發表於2001-09-29

工具軟體:TRW1.22娃娃版
目標軟體:小李登錄檔大師1.11
軟體大小:406K
下載:http://www.csdn.net/soft/openfile.asp?kind=1&id=13630
介紹:這個軟體的註冊很簡單,屬於明碼比較,適合初學者用來了解CRACK的基礎知識(並不是全部)。
      在這裡主要是介紹TRW的使用。
步驟:
1。執行目標軟體。
2。執行TRW
2.5 如果你將第1和第2步反過來,在執行目標軟體時,會出現TRW的工作視窗,不要怕~~按F5就可以返回WINDOWS了
3。將TRW的視窗最小化。(沒有什麼意義,習慣問題)
4。返回到目標軟體,這個東東一開始就會出現註冊視窗。
5。好了,在使用者名稱裡填上你最喜歡的NICKNAME吧,比如我就填MORNING[BCG],註冊碼12345678,這兩樣東東都可以
  按你的習慣填,不會影響你理解下文的.
6. 這時該請出我們的主角TRW了,TRW有兩組熱鍵,分別代表不同的特權級別,所謂特權級別就是程式在執行中有級
  別之分,只有作業系統工作在最高階--0級中,其它的程式都應工作在3級中,在3級中的程式不可直接訪問IO埠
  ,也無法訪問其它程式執行的記憶體,連向程式自已的程式碼段寫入資料都是非法的(會出現你熟悉的藍色畫面),只有對
  工作在0級上的程式來說系統才是全開放的.所以TRW為我們準備了兩種不同特權級別的熱鍵(CTRL+N為3級,
    CTRL+M為0級),可以在不同的情況下使用,像我們今天跟的這個程式來說使用3級就可以了,所以我們按CTRL+N
7. 呵呵~~出現了我們可愛的TRW了吧,要是沒有出來別也急,按按你的回車,空格,ESC.....或者按按滑鼠看看行不
  行,要不重啟動機器換用0級熱鍵試試.
8. TRW的主介面由五部分組成,從最上面開始是存貯/暫存器窗,用來顯示各存貯/暫存器的當前值.
9. 下面的一個視窗是資料視窗,是用來顯示存貯器的內容的,在資料視窗的左面也就是由‘:’分開的兩個值分別
  為段地址:偏移地址中間為"段地址:偏移"地址所存貯的16進位制值,在右面是那些16進位制值所對應的ASCII碼.
10.資料窗下面是程式碼窗,也就是程式啦~~,高亮顯示的那一行是機器將要(注意:是將要)處理的下一條指令.
11.在程式碼窗右上角的是堆疊窗,(所謂堆疊就是一段以先進後出為工作方式的存貯器(記憶體))它顯示的是堆疊的:偏移地址和內容
12.在程式碼窗的下面是指令窗,在這裡你可以對TRW下達你的指令.
13.TRW所有視窗的預設顏色是黑底藍字,在白天不易看清,所以你可以下指令VER BLUE來改變它的顏色,如果你想
  它每次啟動時都改變那你可以開啟TRW2000.INI檔案,把INIT="lines 35;wr 3;wd 8;wc 16;code on;"改成
  INIT="lines 35;wr 3;wd 8;wc 16;code on;ver blue"也就是把VER BLUE加在裡面.
14.好了,在給TRW換完臉後就可以開始我們的主題了,呵呵~~~~~好累呀
15.在完成了1--5步後,CTRL+N撥出TRW
16.下指令BPX HMEMCPY //BPX是TRW的中斷指令,這個命令的意思是當有記憶體COPY動作時就中斷程式,切到TRW
17.下完上一個指令後按F5就又回到了目標軟體,這時按下注冊,呵呵~~~被TRW攔下來了吧,這裡我們在程式碼
  視窗中看到的高亮程式碼就是中斷的地方,是KERNEL!HMEMCPY對吧,那個KERNEL是核心的意思,(注意!!!我們
  可以看到在程式碼窗和指令窗的分界線上也有一個KERNEL標誌,說明你在程式碼視窗中看到程式碼是核心程式,也就是
  現在的機器執行的程式還不是我們要跟的目標,怎麼才能到我們要跟的目標呢?呵呵~~別急,TRW為我們專設了
  個指令PMODULE它可以使我們一下達到我們要跟的目標,怎麼才知道我們到目標了呢?還是看我們剛才有KERNEL
  標誌的那個地方,現在是不是變成了@#$%^&*1.11!CODE+XXXX,那個"@#$%^&*1.11"就是我們的"小李登錄檔大師1.11"
  呀,這個標誌也就是可以常在破文中見到的領空,那裡是誰就是誰的領空.
18.我們剛才在第16步下了一個斷點HMEMCPY,只要我們不清除或不退出TRW它就會一直存在,很煩人(只要條件相同就中斷)
  所以我們就要清除或關掉它,TRW為我們準備了好多中斷指令在這裡我們說幾個常用的.BL是用來顯示中斷列表的,有時
  我們下了好多中斷,要對其中的一個進行操做我們就要知道它在中斷列表中的號碼,這時我們就可以下指令BL
  我們的中斷列表就會出現在指令窗中.現在我們有了各中斷在列表中的號碼就可以對它們操作了,BD XX(XX為號碼),就
  是關掉XX號中斷(並不是清除,只是關掉了,使用BL看列表時,前面有*的是關掉的中斷),BE XX可以使關掉的XX號中斷重
  新起作用.當我們以後不再使用某一箇中斷時,就可以用BC XX清除掉它,這時這個斷點將被從中斷列表中清除.另外還有
  BD *為關掉所以斷點,BE *是使用全部斷點,BC *是清除全部斷點,以上指令可按當時情況使用.
19.我們在這裡用BD關掉我們下的斷點,然後就可以開始P了(什麼是P呀??)呵呵~~~ P是TRW中的又一個指令,就是單步執行
  程式的意思,每執行一條指令就停下來.P指令有一個快捷鍵---F10,這下我們就不用一直P呀P的了,只要按F10就可以了.
20.好了,我們現在就可以開始P我們的目標了,看看它都做了點什麼,我按F10按按..........你可以看到在暫存器窗中不
  時的有高亮顯示,那是那個東東的值發生了改變,所以就被高亮顯示了....在以後的使用中好好利用這一點.
21.在按F10時要注意看沒有執行的程式碼中有沒有像JXX一類的東東,要是有的話不要急著帶過,停下來看看說不定那就是
  關鍵點,在這個例子中我們一直P到了下面(這裡有個JNZ):

015F:0047F5B5 8D55EC          LEA      EDX,[EBP-14]
015F:0047F5B8 8B83E0020000    MOV      EAX,[EBX+02E0]
015F:0047F5BE E87506FBFF      CALL    0042FC38
015F:0047F5C3 8B45EC          MOV      EAX,[EBP-14]
015F:0047F5C6 8B55FC          MOV      EDX,[EBP-04]
015F:0047F5C9 E82247F8FF      CALL    00403CF0
015F:0047F5CE 755F            JNZ      0047F62F            (JUMP)

22.我們怎麼才能知道這個JNZ是不是關建呢?肯定是要執行它啦~~但我們前面的不能白P呀,這時你可以在JNZ這條程式碼高亮
  時按F9,就在這條指令上下了一個斷點,呵呵~~~怎麼樣方便吧?用BL看看,是不是有你剛下的斷點啦~~~,有了斷
  點我們還怕什麼?繼續P......沒P幾下註冊失敗的視窗就出來了,好了再次註冊,點下注冊,程式中斷在我們剛剛用F9下的
  斷點上了,為了進一步驗證那個JNZ是不是關鍵點,我們這時可以玩個小把戲騙騙它,我們用TRW的A指令,這個指令可以讓
  我們修改高亮程式碼和它後面的程式碼.(只是在記憶體中修改,沒有寫到原程式,重啟動程式後又恢復原樣)
23.我們下A後TRW會等待你輸入新的程式碼,現在按回車可以放棄修改,可是我們怎麼就能這樣放棄了呢?我們把它改成
  JZ XXXXXXX 只去掉一個N別的都不變,按回車後TRW等你輸入下一條指令,我們這裡不需要修改下一條指令,所以我們
  再按一下回車退出.然後你可以看到在程式碼窗中我們改的JZ XXXXXXX了,OK,按F5看一下吧,哈哈~~~~~註冊成功,看來我
  們是找對地方了。這裡我又要講一個新的TRW指令就是:CODE ON 這個指令可以在程式碼窗增加顯示程式程式碼在程式檔案
  中的十六進位制形式,你可以記下JNZ那一行的十六進位制碼,把改成JZ後的也記下來,你就可以用十六制編輯器編輯程式
  檔案,在裡面找你記下的JNZ那一行的十六進位制碼,找到後把它改成JZ的那一組,儲存,這就是爆破了。(我可沒有說
  適用本例程哦~~~),與CODE ON 對應的還有CODE OFF就是關掉十六進位制程式碼。
24.我們來學最後一個TRW指令---D ,這個指令可以用來顯示你指定的存貯器(記憶體)或暫存器的內容,在我們這個例子中,
  按F10一直到這裡時:
  015F:0047F5C3 8B45EC          MOV      EAX,[EBP-14]
  015F:0047F5C6 8B55FC          MOV      EDX,[EBP-04]<----這個高亮時下 D EAX 在資料窗的第一行就是EAX所指的
                                                            東西,呵呵~~是你自己輸的吧
  015F:0047F5C9 E82247F8FF      CALL    00403CF0  <----這個高亮時下D EDX 你自己再看看EDX指向的是什麼呢??
25. 另外CALL是程式在呼叫子程式,在CALL語句高亮時按F8就可以看到子子程式的執行過程了.

 
終於寫完了,用了兩天的空閒時間完成,希望可以給新來的朋友們一點點提示,以上的東東我是想起什麼說什麼,主意是想給新
手們介紹一下TRW這個好東東,當然這麼短的文章不可能介紹到TRW的方方面面(呵呵~~我也知道多少).所以你要是想進一步的
學習使用TRW,還是看看TRW的使用說明吧.

過了十一我就要上學了(呵呵~~~不用軍訓了),也許我以後只能來這裡做看客了,
祝新老朋友,萬事如意,工作順利,學有所成。。。。。
           
                翠花~~上酸菜~~~~~~~~~~

                                                  morning
                    Beginner's Cracking Group
                            2001.9.29

相關文章