Part 3'te belirttigimiz gibi simdi lisans dogrulamasina sahip olan bir programin lisans erisimini nasil atlayabilir onu ogrenelim ama once yine bazi terimlere bakalim:
Program: yazilim veya software olarak da bilinen kullanicidan komut alip onu isleyerek sisteme emir gondermesini saglayan araci kod yiginidir.
ByPass: kullanicinin herhangi bir veriye veya programa tam erisim saglamasini kisitlayan yazilimin exploit edilerek etkisini kaybettirmeye yarayan kod yiginidir. Kisaca erisim denetimini atlamak demektir.
Crack: ByPass ile kismen ayni anlama gelir. Biraz acmak gerekirse bir programin erisim denetimi sorgudunu etkisiz hale getirmeye denir.
KeyGen: ByPass veya Crack etmeyi saglayan ozel sifreyi veren programdir.
Debug: hata giderme icin uygulama kayitlarini alma islemidir.
Ornek bir yazilimi crack edelim:
Bir programı crackleyebilmek için ilk olarak onun hangi dilde yazıldığını bilmemiz gerekir. Çünkü hangi dilde yazıldığını bilmek onu cracklemek için hangi araçları kullanacağımızı bize anlatır. Windows platformunda çalışan programlar aslında 2 ye ayrılmaktadırlar.
2 yazılım kullanacağız bunlar:
1- Ollydbg
2- DİE (Detect İt Easy)
Ollydbg Windows kütüphanesi üzerinden çalışan programları debug etmeye yarayan tersine mühendislik aracıdır
Detect it easy ise program üzerinde bulunan şifreleyicileri ve hangi dilde yazıldığını gösterir
1 – Detect İt Easy ile programda paketleme olup olmadığını kontrol ettik her hangi bir şifreleme koruması yok program c++ ile yazılmış.
2- Ollydbg içerisine programımızı attık .Sağ tıklayıp – >Search For -> All referenced Text String diyoruz.
3- Bu kısımda en üst bölüme çıkıp Sağ tıklıyoruz -> Search For Text dedikten sonra çıkan arama kutusuna hata mesajımızın bir bölümünü yazıyoruz yani “Registration“. Aramaya devam etmek için Ctrl + L kombinasyonuna basıyoruz.
4- Hata mesajının nerede olduğunu bulduk çift tıklayarak içerisine girelim.
5- Bu bölüm bizlere hata mesajının olduğu kodları gösteriyor . Kodların akışını daha iyi görebilmek için Sağ tıklayıp -> Analyze This! diyoruz. Yada Ctrl + A kombinasyonu ile tamamlayabiliriz.
6- İyi mesaj ve kötü mesajı görebiliyoruz bu ekranda . Bu kodların üzerine çıkacağız. Kırmızı okun geldiği yere gidelim.
7- JE komutu kendinden önce gelen kısımdaki karşılaştırmanın eşit olup olmadığını kontrol eder. Yani Al, Al değerleri eşit ise belirlenen ofsete atlayacaktır. Aksi halde normal akışına devam edecek.
8- Aslında sabit bir serial mevcut o kısımda seriali direkt alıp programa koyabiliriz. Ancak Başka durumlarda serial bu kadar açıkta olmayabilir. Neyseki JE komutuna tıklayıp -> space tuşuna basalım ve “nop” yazalım. Böylelikle programımız sürekli olumlu mesaja gidecektir. Yada “jmp” komutu ile bir altında bulunan ofsete atlatabiliriz
Program: yazilim veya software olarak da bilinen kullanicidan komut alip onu isleyerek sisteme emir gondermesini saglayan araci kod yiginidir.
ByPass: kullanicinin herhangi bir veriye veya programa tam erisim saglamasini kisitlayan yazilimin exploit edilerek etkisini kaybettirmeye yarayan kod yiginidir. Kisaca erisim denetimini atlamak demektir.
Crack: ByPass ile kismen ayni anlama gelir. Biraz acmak gerekirse bir programin erisim denetimi sorgudunu etkisiz hale getirmeye denir.
KeyGen: ByPass veya Crack etmeyi saglayan ozel sifreyi veren programdir.
Debug: hata giderme icin uygulama kayitlarini alma islemidir.
Ornek bir yazilimi crack edelim:
Bir programı crackleyebilmek için ilk olarak onun hangi dilde yazıldığını bilmemiz gerekir. Çünkü hangi dilde yazıldığını bilmek onu cracklemek için hangi araçları kullanacağımızı bize anlatır. Windows platformunda çalışan programlar aslında 2 ye ayrılmaktadırlar.
2 yazılım kullanacağız bunlar:
1- Ollydbg
2- DİE (Detect İt Easy)
Ollydbg Windows kütüphanesi üzerinden çalışan programları debug etmeye yarayan tersine mühendislik aracıdır
Detect it easy ise program üzerinde bulunan şifreleyicileri ve hangi dilde yazıldığını gösterir
1 – Detect İt Easy ile programda paketleme olup olmadığını kontrol ettik her hangi bir şifreleme koruması yok program c++ ile yazılmış.
2- Ollydbg içerisine programımızı attık .Sağ tıklayıp – >Search For -> All referenced Text String diyoruz.
3- Bu kısımda en üst bölüme çıkıp Sağ tıklıyoruz -> Search For Text dedikten sonra çıkan arama kutusuna hata mesajımızın bir bölümünü yazıyoruz yani “Registration“. Aramaya devam etmek için Ctrl + L kombinasyonuna basıyoruz.
4- Hata mesajının nerede olduğunu bulduk çift tıklayarak içerisine girelim.
5- Bu bölüm bizlere hata mesajının olduğu kodları gösteriyor . Kodların akışını daha iyi görebilmek için Sağ tıklayıp -> Analyze This! diyoruz. Yada Ctrl + A kombinasyonu ile tamamlayabiliriz.
6- İyi mesaj ve kötü mesajı görebiliyoruz bu ekranda . Bu kodların üzerine çıkacağız. Kırmızı okun geldiği yere gidelim.
7- JE komutu kendinden önce gelen kısımdaki karşılaştırmanın eşit olup olmadığını kontrol eder. Yani Al, Al değerleri eşit ise belirlenen ofsete atlayacaktır. Aksi halde normal akışına devam edecek.
8- Aslında sabit bir serial mevcut o kısımda seriali direkt alıp programa koyabiliriz. Ancak Başka durumlarda serial bu kadar açıkta olmayabilir. Neyseki JE komutuna tıklayıp -> space tuşuna basalım ve “nop” yazalım. Böylelikle programımız sürekli olumlu mesaja gidecektir. Yada “jmp” komutu ile bir altında bulunan ofsete atlatabiliriz