![]() Temel Cracking | ||||||||||
|
(#1)
|
||||||||||
|
[10]Yeni Üye
![]() ![]() >Mesaj Sayısı: 29
>Açtığı Konu: 7
Level: 4 [ ![]() ![]() ]Paylaşım: 0 / 78 Üyelik tarihi: Jun 2007
Kullanıcı No: 76070
Rep Puani: 107
Rep Derecesi :
![]() ![]() |
İnternetten veya elimizdeki bir CD’nin içeriğinden bir programı bilgisayarımıza yüklüyoruz ve programı ilk çalıştırdığımızda bunun bir Demo veya Shareware sürüm olduğu söyleniyor. Yani kısıtlı kullanım haklarına sahip ya da bize birkaç gün süre verilip denememiz isteniyor. Sonuç olarak programın tam sürümü ücretli ve lisans gerektiriyor. Peki biz bu programı ücret ödemeden de tam sürüm haline dönüştürebilir miyiz ?
Eğer cracking hakkında bilgiye sahipseniz cevap evet olabilir. Peki bu iş nasıl yapılıyor ? Başlarken belirtmeliyim ki bu iş göründüğü kadar kolay değil, sabır ve bilgi gerektirir. İlk önce bir programın çalışma mantığını anlayalım. Herhangi bir yüksek seviyeli programlama diliyle yazılmış bir program çalıştığı zaman bunun bilgisayar tarafından okunması için kodların düşük seviyeli (makine dili) dile çevrilmesi lazımdır. Çünkü bilgisayar işlemcisi ancak makine dilini okuyabilir. Onaltılık sayı düzenindeki kodları ikilik düzene çevirilir (1 ve 0) ve işlemci bunu yorumla***** programı çalıştırır. İşte burada Assembly devreye girer. Makine dili çok zor olduğu için Assembly geliştirilmiş ve kullanılmaktadır. Bu yüzden bir programı kırmak istiyorsak Assembly dilini çok iyi derecede bilmemiz gerekmektedir. Şimdi bir programı nasıl kıracağımızı düşünelim. Diyelim ki shareware olan bir programı çalıştırdık ve karşımıza “30 gün deneme süreniz var” şeklinde bir mesaj geldi ve tam sürüm programa sahip olmak istiyorsak bir anahtar (serial) girmemiz gerektiği söyleniyor. Bizim yapacağımız şey program kodlarından bu hatayı verdirten bölümü bularak kendimize ait bir serial’ı oluşturmak, bir patch (yama) yardımı ile programı tam sürüm haline getirmek ya da programın 30 günlük deneme hakkını uzatmak. Bunu yapmak için 2 yöntem kullanılabilinir. Ya program çalışmıyorken tüm kodları baştan sona tarayıp işimizi yapmak, buna dead list yöntemi de deniyor, ya da program çalışır vaziyetteyken bir hata ayıklayıcısı (debugger) yardımıyla o andaki kodlara bakılarak sonuca ulaşmak. Yani yapacağımız şey tersine mühendisliktir. Bunları yaparken bazı araçlara ihtiyacımız olacak. Mesela işlemleri yapabilmek için öncelikle programı Assembly diline çevirmeliyiz bunun için bir Disassembler programı, içeriklerini görmemiz için ise bir HEX editör kullanabiliriz. Disassembler’a örnek olarak Win32Dasm verebiliriz. HEX editörler için ise çok fazla seçenek var, eskiler Hex Edit, HIEW, WinHex gibi programları kullanırdı şuanda internette daha geniş ve detaylı HEX editörleri mevcut. Image Bir Disassembler örneği, Putty programı üzerinde çalışıyor. Debugger’lar yani hata ayıklayıcı programlar ise kırmaya çalıştığımız program çalışırken yaptığı işlemleri görmemizi sağlar. Bu yöntem daha fazla deneyim gerektirir fakat bizi tüm jump ve call komutlarını detaylı analiz yapmaktan kurtarır. En çok bilinen debugger programı Soft-Ice’tır. Program çalışırken Soft-Ice ekranına geçtiğimizde durak noktaları tespit etmemiz gayet kolay olacaktır. Image Soft-Ice ekranı Gerekli araçları edinmiş ve yeterince bilgiye sahipsek bundan sonrası tamamen crack olayını yapan kişinin yaratıcılığına bağlıdır. Bu işin bir tertibi olmamakla beraber aynı programı onlarca değişik yöntem ile kırabiliriz. “30 günlük deneme” hakkı veren program örneğine geri dönüp basitçe anlatmak istiyorum, bunu yaparken işin detaylarına girmeyeceğim çünkü eğer bu konu hakkında yeterince bilginiz yoksa kafa karıştırmaktan başka bir işe yaramayacaktır. Öncelikle program başlarken nasıl çalıştığını ve neler yaptığını anlamamız lazım. Bunun için programın Call Flow yani çalışma sürecini kontrol edebiliriz. Biz şöyle bir Call Flow’a sahip olduğumuzu düşünelim, 1-) Bilgisayarın o anki tarihini kontrol ediyor 2-) Programın yüklendiği tarihi kontrol ediyor 2a-) Süre dolmuşsa hata verip programı kapatıyor 2b-) Süre dolmamışsa kalan süreyi gösterip programı çalıştırıyor Program 1. ve 2. işlemden sonra bir koşul koyar bu koşulun doğruluğuna göre 2a veya 2b işlemlerini gerçekleştirir. Bunları yaparken iki farklı kod kullanır, bunların başlangıçları aynı fakat koşula göre devamları 2a ve 2b’nin çalışma prensibine göre farklı olacaktır. Biz buraya kadar geçen işlemlerde oynama yaparak programı sürekli hale getirebiliriz çünkü program bir süre aralığına bakıyor ve buna göre size kullanım hakkını veriyor ya da programdan çıkıyor. Mesela 2. işleme kadar gelip yaptığı kontrol işlemini (2a), 2b’ye döndürebiliriz bu sayede shareware ama sınırsız kullanıma sahip bir programımız olacaktır. Başka bir örnek verirsek, elimizde anahtar ve kullanıcı adı ile kayıt olunan bir program var diyelim. Anahtar ve kullanıcı adını yanlış girdiğimiz zaman bize bir hata verir biz bu hatadan yola çıkarak programda oynama yapabiliriz. Genelde işimiz atlayıcılar (jumper) iledir. Biz yanlış anahtar girdiğimizde jumper yardımıyla bizi gördüğümüz hata mesajına ***ürecektir ama biz bunu çevirip doğru yere gönderirsek, girdiğimiz herhangi bir anahtar ve kullanıcı adıyla kayıt olabiliriz. Özellikle Türkiye’de korsan oyunlar çok olduğu için muhtemelen bunlarla karşılaşmışsınızdır. Mesela sahte bir oyun cd’si aldınız, genellikle bunların içinde crack klasörü vardır siz alır içindeki dosyayı yüklediğiniz oyunun klasörü içine atarsınız ve oradaki bir dosya ile yer değiştirir. İşte attığımız bu dosya yukarıdaki yöntemler veya benzeri bir yöntem kullanılarak üzerinde değişiklik yapılmış oyun dosyalarıdır. Benzer şekilde internette birçok crack sitesi vardır siz buralardan çeşitli crack, keygen veya patch dosyaları indirip programları crackleyebilirsiniz. Bunların hepsinde kullanılan mantık yukarıdaki gibidir. Son olarak şunu belirtmek isterim, bu yazının amacı sadece cracking mantığını göstermektir. Bir program ücret karşılığı dağıtılıyor ve siz bu programı crack yöntemleriyle kırıp kullanıyorsanız suç işliyorsunuzdur. Programcılar, program yazmak için aylarca emek harcarlar ve bu emekleri onlara geri dönmezse daha iyilerini yapamazlar. Bu yüzden lisanslı program kullanmanızı öneririm. |
|||||||||
|
||||||||||
|
|
![]() Cevap: Temel Cracking | ||||||||||
|
(#2)
|
||||||||||
|
[10]Yeni Üye
![]() ![]() ![]() >Mesaj Sayısı: 78
>Açtığı Konu: 9
Level: 7 [ ![]() ![]() ![]() ![]() ]Paylaşım: 0 / 169 Üyelik tarihi: May 2007
Kullanıcı No: 41360
Rep Puani: 100
Rep Derecesi :
![]() ![]() |
proları buldum denicem
emeğin için teşekkürler |
|||||||||
|
||||||||||
![]() |
| Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| Seçenekler | |
| Stil | |
|
|