![]() |
Crack Nasıl Yaplırı ? - Part-III |
![]() |
![]() |
#1 |
RaHaTSiZ
|
![]() Crack Nasıl Yaplırı ? - Part-III4 ![]() ![]() ![]() Bu aşamada yapılacak işlem, String Data References butonuna tıklamaktır ![]() ![]() ![]() ![]() 4 ![]() ![]() ![]() Sonra Win32Dasm textine dönmek için pencere kapatılır ![]() ![]() ![]() 4 ![]() ![]() ![]() Bu aşamada, kodda bulunan bütün call ve jump komutlarının offsetlerinin not alınması gerekir ![]() ![]() ![]() 4 ![]() ![]() ![]() Daha sonra HIEW’e geçilir ![]() ![]() ![]() ![]() ![]() 4 ![]() ![]() ![]() Hiew dizini içindeki listeden kırılacak oyunun kaydedildiği dizine gelinerek oyunun exe’sine tıklanır ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 5 ![]() Bir programın kırılması için, onun disassemble edilebilmiş koduna ihtiyaç vardır ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Program kırmak için bazen diğer tool'larla birlikte Hex Editör'ler de kullanılır ![]() ![]() Burada Disassembler, Hex Editör ve Debugger kavramları, en çok kullanılan örnekleri üzerinde incelenmiştir: 5 ![]() ![]() Çalıştırılabilir(exe) programlar hafızada, makine dilinde bulunurlar , bu kodların anlaşılabilmesi için, ASSEMBLY kodlarına çevrilmesi gerekir ![]() ![]() Burada disassembler örneği olarak W32Dasm tanıtılacaktır: 5 ![]() ![]() ![]() W32Dasm disassembler’ı [hide]http://www/expage ![]() ![]() ![]() ![]() ![]() 5 ![]() ![]() ![]() ![]() • W32Dasm Windows NT 4 ![]() ![]() • W32Dasm Intel MMX komut setini disassemble edebilmektedir ![]() • 32 bit debugger’ın, kod yamalama fonksiyonu(komut assembler’ı) vardır ![]() • CPU kaydedicilerinin ve bayrakların değişiklik göstergeci mevcuttur ![]() • Referans adresine sağ tuşla çift tıklandığında bütün Call ve Jump Cross Reference adreslerine dallanabilir ![]() ![]() 5 ![]() ![]() ![]() ![]() W32Dasm editörü Şekil 5 ![]() ![]() ![]() ![]() ![]() Açılan pencereden AudioWriter ![]() ![]() W32Dasm ile şifre kırma tekniği, programın açılışında girilen yanlış koda karşı verdiği hata mesajına dayanır ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Şekil 5 ![]() ![]() Disassembler içinde kodlar incelenerek hata mesajının olduğu yer bulunur ![]() ![]() ![]() ![]() 5 ![]() ![]() Hex Editör Programı, programcının heksadesimal yama (patch) editörüdür ![]() ![]() Hex Editör programına örnek olarak, HexEdit tanıtılacaktır: 5 ![]() ![]() ![]() HexEdit programını kullanabilmek için gerekli olan tek dosya, HE ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 5 ![]() ![]() ![]() ![]() • Birlikte çalışacağı dosyalarda büyüklük sınırlaması yoktur ![]() • Dosya üzerinde yapılan bütün değişiklikleri kaydeder ![]() ![]() • Güçlü bir makinada, dosyaları tarama hızı, 10 sn/MB oranındadır ![]() • Hızlı ve esnek bir ‘Bul/ Bul ve Değiştir’ özelliği vardır ![]() ![]() • Dosyanın her byte(F2) ve sektörüne(SF2) sıradan erişimli atlama(jump) imkanı sağlar ![]() • Karakter stringleri ve heksadesimal serilerde arama yapar ![]() • 15000 tarama eşlemesine kadar saklama imkanı vardır ![]() • Desimal, heksadesimal ve ikili(binary) sistemler arası dönüşüm yapabilir ![]() • Tanınmayan karakterler için ASCII tablosu getirebilir (Alt-A) ![]() • İkili dosyalarda sıradan erişimli stringler için tarama yapabilir (Alt-T) ![]() 5 ![]() ![]() ![]() ![]() HexEdit çalıştırıldığında, yama yapılmak istenen dosya belirlenerek, okunacak ve aşağıdaki ekran görüntüsü oluşacaktır: [Editing: C:UTILHEHE ![]() ![]() Found: 127/290 Changes : 4297 Mask:Off Mode:C Page:1 Current Sector: 39(00000027) Byte: 20360(00004F88) Total Sectors : 127(0000007F) Bytes: 65503(0000FFDF) ÍÍÍÍ00Í01Í02Í03Í04Í05Í06Í07Í08Í09Í0A Í0BÍ0CÍ0DÍ0EÍ0 FÍÍÍÍÍÍ0123456789ABCDEFÍÍÍÍ 00- 74 69 6F 6E 20 6F 66 20-48 45 58 45 44 49 54 2E -00- tion of HEXEDIT ![]() 01- 54 58 54 20 66 6F 72 20-6D 6F 72 65 20 69 6E 66 -01- TXT for more inf -01 02- 6F 72 6D 61 74 69 6F 6E-2E 36 54 68 65 72 65 20 -02- ormation ![]() 03- 69 73 20 6E 6F 20 64 69-66 66 65 72 65 6E 63 65 -03- is no difference -03 04- 20 62 65 74 77 65 65 6E-20 74 68 65 20 72 65 67 -04- between the reg -04 05- 69 73 74 65 72 65 64 20-61 6E 64 20 6E 6F 6E 2D -05- istered and non- -05 06- 33 72 65 67 69 73 74 65-72 65 64 20 76 65 72 73 -06- 3registered vers -06 07- 69 6F 6E 73 20 28 74 68-69 73 20 69 73 20 4E 4F -07- ions (this is NO -07 08- 54 20 43 72 69 70 70 6C-65 77 61 72 65 21 21 21 -08- T Crippleware!!! -08 09- 21 21 29 2E 0F 20 20 20-20 4D 69 6B 65 20 47 72 -09- !!) ![]() 0A- 61 68 61 6D 0D 20 20 20-20 42 6F 78 20 36 30 30 -0A- aham Box 600 -0A 0B- 33 36 18 20 20 20 20 55-20 6F 66 20 41 20 50 6F -0B- 36 U of A Po -0B 0C- 73 74 61 6C 20 4F 75 74-6C 65 74 10 20 20 20 20 -0C- stal Outlet -0C 0D- 45 64 6D 6F 6E 74 6F 6E-2C 20 41 42 13 20 20 20 -0D- Edmonton, AB -0D 0E- 20 43 61 6E 61 64 61 20-20 54 36 47 20 32 53 34 -0E- Canada T6G 2S4 -0E 0F- 3C 20 6F 72 20 63 6F 6E-74 61 63 74 20 22 6D 69 -0F- < or contact "mi -0F ÍÍÍÍ00Í01Í02Í03Í04Í05Í06Í07Í08Í09Í0A Í0BÍ0CÍ0DÍ0EÍ0 FÍÍÍÍÍÍ0123456789ABCDEFÍÍÍÍ F1:Help F2/SF2:Jump F3:Search F4:Srch/Rep F8:Mask F9:Mode ESC:Exit Alt keys: A:Ascii B:Base C:Config S:Shell X:Abort! T:Text U:Undo Şekil ![]() ![]() ![]() Ekran görüntüsünün en başında, yamalanacak dosyanın adı (burada HE ![]() ![]() ![]() ![]() ![]() ![]() ![]() 5 ![]() ![]() ![]() ![]() HexEdit programında kullanılan fonksiyon tuşları ve kısayollar aşağıdaki gibidir: F1: Help F2: İstenen byte’a atlama Shift-F2: İstenen sektöre atlama F3: Arama F4: Bul ve Değiştir F8: Text olmayan byte’ları maskele F9: Modu belirle Alt-A: ASCII Tablosu Alt-B: Taban dönüşümü Alt-C: Konfigürasyon Alt-N: Sonraki bulgu Alt-P: Önceki bulgu Alt-S: DOS’a geçiş Alt-T: Text taraması Alt-U: Undo(geri alma) Alt-X: Panic Abort (programdan hiç bir değişiklik kaydedilmeden hızlı çıkış) Esc: Exit Backspace: Kaydedilmemiş değişiklikleri geri al 5 ![]() ![]() Debugger bir hata ayıklama programı olup, kullanıcılara programların analiz edilmesinde, bazı kritik noktalarda durma noktaları (breakpoint) koyma ve programın çalışması sırasında istenen noktadaki kaydedici ve bellek durumlarının incelenmesini sağlarlar ![]() ![]() ![]() ![]() Debuggerlar geliştirilmeden önce, program kodu içinde değişkenlerin değerini araştırmak ve hata bulmak için programcıların aşağıdaki gibi kod parçaları kullanmaları gerekmiştir[12] ![]() /*Code*/ ( ![]() ![]() ![]() loop change_a_variable; show_value_of_variable; end_loop ( ![]() ![]() ![]() dewamı diger bölümde ![]() ![]() ![]() |
![]() |
![]() |
![]() |
Cevap : Crack Nasıl Yaplırı ? - Part-III |
![]() |
![]() |
#2 |
erkanv
|
![]() Cevap : Crack Nasıl Yaplırı ? - Part-III:notworthy: |
![]() |
![]() |
![]() |
Cevap : Crack Nasıl Yaplırı ? - Part-III |
![]() |
![]() |
#3 |
erkanv
|
![]() Cevap : Crack Nasıl Yaplırı ? - Part-IIIteşekür |
![]() |
![]() |
![]() |
Cevap : Crack Nasıl Yaplırı ? - Part-III |
![]() |
![]() |
#4 |
erkanv
|
![]() Cevap : Crack Nasıl Yaplırı ? - Part-IIICevap : Crack Nasıl Yaplırı ? - Part-III |
![]() |
![]() |
![]() |
Cevap : Crack Nasıl Yaplırı ? - Part-III |
![]() |
![]() |
#5 |
erkanv
|
![]() Cevap : Crack Nasıl Yaplırı ? - Part-III![]() |
![]() |
![]() |
|