PDA

Orijinalini görmek için tıklayınız

eXTReMe Tracker
: Yeni başlayanlar için basit cracking mantığı daha


rıp
06-13-2007, 05:24 PM
Öncelikle gerekli olan programları belirteyim

*W32Dasm
*Herhangi bir hex editörü
( Google'dan bulabilirsiniz )

Gelelim işlemlere:
Şöyle bir hikaye uyduralım kendi kafamızdan;
Elimizde bir program var ve kırılması gerekiyor programı reglemek için ise elimizde serial olması lasım öyleyse ilk önce programı açıyoruz ve register bölümünü iyice inceliyoruz ne tür yazılar var ne tür buttonlar var menülerde ne yazıyor özelliklede "ok" tuşunda ne yazıyor yani reglemek için ne yapmamız gerekiyor bizimki "kaydet" olsun daha sonra işimizi garantiye almak için kafamızdan bir serial sallıyoruz ve kaydet tuşunu tıklıyoruz tabii ki karşımıza bir hata vesajı gelecektir örneğin " incorrect serial no. " olsun bizim hata mesajımız şimdilik programla işimiz bitti kapatabiliriz.

Geliyoruz W32Dasm'a w32dasm ile programın exesini açıyoruz kısa bir bekleyişten sonra exe mizin asm( assembly ) kısa bir bekleyişten sonra kodlar artık karşımızda şimdi refs ten string'leri incelemeye başlayalım vede karşımıza çıknan hata mesajını bulalım zaten hemen gözünüze çarpacaktır şimdi üstüne gidip bir kaç kere tıklayalım bir kaç kez dememin nedeni şu bazı durumlarda hata mesajımız birden fazla yerden gelebilir bu işleri biraz karıştırabilir fakat bur da sadec tek bir yerden geliyor vede hep aynı yere gidiyoruz şimdi kodları birazcık inceleyelim bakalım neler göreceğiz.


* Referenced by a (U)nconditional or ©onditional Jump at Address:
|:004012DC©--->Bu mesaja sıçrama yapan birjump adresi
|
:004012F4 6A00 push 00000000

* Possible StringData Ref from Data Obj ->"Hata!" --->Hata mesajımızın başlığı.
|
:004012F6 68F8314000 push 004031F8

* Possible StringData Ref from Data Obj ->" incorrect serial no. " --->Karşımızaçıkan hata mesajı.

Sorun şu bizim girdiğimiz serial karşılaştırmalardan sonra eğer hatalı ise bir tane jump sıçrama yapark programın akışını değiştiriyor ve de karşımıza hata mesajı çıkıyor. O zaman bizim yapmamız gereken nedir? Serial yanlış ise hata mesajı vermemesini sağlamak ve serial ı dogru kabul etmek!


şimdi dönelim işimize
Bu mesaja sıçrama yapan birjump adresi deyip gülmüştüm neden güldüğüme gelince oradaki 004012DC öyle bi işimize yarayacak ki anlatamam!Anlatırım

Şimdi yukarıdaki "GoTo&q
uot; menüsünü kullanacağız GoTo'ya tıkla***** ordan "Goto Code Location" u seçiyoruz vede oraya "004012DC" değerini yazıp go diyoruz işte jump adresinin üstündeyiz.
Şöyle bişeyler gelecektir.


:004012DA 09C0 or eax, eax
:004012DC 7416 je 004012F4 ---->Hata mesajına zıplayan jump.(Buraya geldik)
:004012DE 6A00 push 00000000
* Possible StringData Ref from Data Obj ->"Yuo Have Registered!!!" --->Mesajın başlığı.
|
:004012E0 6826324000 push 00403226
* Possible StringData Ref from Data Obj ->"Congratulations, You have the registered version now!!!" ---> amacımız buna ulaşmak.

Şimdi w32'aşağıya bakıp bu jump adresini offset değerini alıyoruzki hex editorümüzde değiştirebileceğimiz yeri bulabileim neymiş offset "000006DC" tamamdır w32 ile işimiz bitmiştir şimdi programımızı hex editörümüzle açıyoruz vede Go kısmına aldığımız offset değerini yazıyoruz go dediğmiz zaman şöyle bir yere geliyoruz..

000006d0h: EC 50 E8 73 00 00 00 83 C4 08 09 C0 74 16 6A 00 ; íP×s...â-..¬t.J.
000006e0h: 68 26 32 40 00 68 30 32 40 00 FF 75 08 E8 C6 01 ; h&2@.h02@. u.×â.

Evet işte jump adresimizin üstündeyiz neymiş değeri "74" o zaman "75" yapalım (bu ikili çok sık kullanılır) değişiklikten sonra durum şöyle olmalı.

000006d0h: EC 50 E8 73 00 00 00 83 C4 08 09 C0 75 16 6A 00 ; íP×s...â-..¬u.J.
000006e0h: 68 26 32 40 00 68 30 32 40 00 FF 75 08 E8 C6 01 ; h&2@.h02@. u.×â.

Bu ufak değişikliği yaptıktan sonra dosyamızı save'leyerek kapatıyoruz şimdi gidip isim vede seri numaramızı kafamıza göre dolduruyoruz register dediğimiz zaman gümmm işte bu kadar crackme'miz kırılmış oldu hayırlı olsun bir adım daha ilerledik

Yani naaptık bu yazıda ordaki jump'ın anlamını değiştirerek zıplamasını engelledik böylece program hata mesajının geldği kısma atlamamış oldu mantığın özü budur.Diğer tutoriallerimizi okuyup uygula***** pratğimizi geliştirelim tamam

Sonsöz: Bu yöntem her programda çalışmayabilir anlayacağınız buna benzer daha bir çok yöntem yöntem var. Zamanım oldukça bunları sizlere anlatacağım... Kolay gelsin

erdogan
06-21-2007, 11:26 PM
saol güzel paylasım emege saygı :)

ergulozkan
06-22-2007, 04:53 PM
ustad elıne saglık cok guzel olmus,ama ben bıraz kalın kafalı oldugumdan bi bok anlamadım.:)

mky83
07-02-2007, 04:54 AM
ya arkadaslar bu yöntemler eskidi winzip 7'ler cracklenir ancak artik bütün programları manuel unpack etmek lazim. ama ben o isleri biraktim,

onuragtas100
09-07-2007, 11:00 PM
eyw saol emeğe saygı

kılıczade
09-25-2007, 05:51 AM
eline saglık