Hoşgeldiniz
Ziyaretçi
. Lütfen
giriş yapın
veya
kayıt olun
.
1 Saat
1 Gün
1 Hafta
1 Ay
Her zaman
Kullanıcı adınızı, şifrenizi ve aktif kalma süresini giriniz
Haberler:
Ana Sayfa
Yardım
Ara
Takvim
Giriş Yap
Kayıt Ol
ByKuS.OrG
»
TEKNOLOJİK BÖLÜM
»
Bilgisayar Dünyası
»
Konu:
Lisanssız programların zaman kilidinin kırılması
« önceki
sonraki »
Yazdır
Sayfa: [
1
]
Aşağı git
Gönderen
Konu: Lisanssız programların zaman kilidinin kırılması (Okunma sayısı 1804 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
physico
ByKuS
İleti: 2831
Rep Gücü : 161
Cinsiyet:
çokta tıın! =P
Lisanssız programların zaman kilidinin kırılması
«
:
Aralık 13, 2007, 02:55:53 ÖS »
ZAMAN KİLİTİ
İnternette dağıtılan ticari programların koruma işlemlerinde ( kilitlerinde) sık sık DLL terimi kullanılmaktadır. Bu tip programlar kullanılmaya başladığı tarihten itibaren XX gün geçtikten sonra program sahibine ödeme yapılmadan tekrar programın kullanılmasına izin vermez.
Koruma sisteminin gizli düzeni oldukça basittir.
1- Program tarafından bize bir seri numarası verilir.
2- Bizden unlock kodunu girmemizi ister, bu kod # ile hesaplanır.
3- İsim, şirket ve diğer maddeler koruma için geçerli değildir.
Burada bize gerekecek bazı bilgiler :
1- Program her yüklendiğinde değişik bir seri numarası tedarik edilir.
2- Kayıt bilgileri bilgisayarın hard diskinde W95 Registry içinde TSF uzantılı dosyalarda saklanır. Bu bilgiler şifrelenmiş olarak hard diskin bazı bölümlerinde depolanır.
Örneğin “ GeoBoy “ V1.3.1 ( zaman kilitli birçok programdan birisi ) adlı programda “ GeoBoy” kelimesi için kayıt bilgilerini aradım, hard diskin bazı bölgelerinde birçok değişik karakter buldum. Bunlar benim girdiğim bilgilerin şifrelenmiş halidir. Fakat bu şifre kırma çalışmamda daha çok DLL ile ilgilendim. Kırma işlemi bittikten sonra programı tekrar kurmak istersek bu eski kayıtları tamamen silmek zorundayız.
Programı hard diskte kurarsak program çalışacaktır. DLL ‘leri aramak için MS-DOS ortamında DIR/S komutunu yazmamız gerekir. Genellikle zaman bilgimiz programımızın yükleme klasöründe veya WIN/SYSTEM klasörü içinde bulunur.
Şimdi internetten aldığım GeoBoy V 1.3.1 adlı programın zaman kilidini kırmaya çalışalım. Bu program NDG software tarafından yazılmıştır. Program çalıştırıldığı zaman, zaman kilidi penceresini görebiliriz. Bu pencereye isim, şirket, ve unlock kodunu giriyoruz.
Şimdi SoftIce ‘ a girelim.
: TASK
HWND yazalım.
: HWND GEOBOY
Şu an bazı edit kutularını arıyoruz ve bulduklarımız aşağıda gözüküyor.
Handle hQueue SZ Qowner Class Name Window Procedure
.............. ............. .... ............ .................. ...............................
052C(2) 0D52 32 GEOBOY Edit 177F:00000BF4*
0508(2) 0D52 32 GEOBOY Edit 177F:00000BF4*
052C(2) 0D52 32 GEOBOY Static 178F:000052FA
0510(2) 0D52 32 GEOBOY Edit 177F:00000BF4*
3 adet edit referansı buldum. Şimdi ilk olarak BMSGging’i deneyelim.
:BMSG 052c WM_GETTEXT
Şimdi windows 95 kernel’ in içine girdim. BD 00 ile pasif duruma getirdim. Şimdi TL32V20 ve DLL’ ye ulaştım. Her bir CALL veya MOV EAX veya MOV ECX veya LEA EAX veya LEA ECX ‘ den sonra adım adım EAX, ECX, EDI, ESI ‘ yı inceledim. En sonunda girdiğim her bilginin (isim, şirket, unlock kod) kayıtlı olduğu DLL adreslerine ve seri numara (her yüklemede tekrar üretilen) ile doğru unlock kodun bulunduğu adreslere ulaştım.
Dikkat edersek, girdiğimiz unlock kodu (örneğin 121212) EBP-14 içinde kayıtlı iken doğru olanı EBP-28 içinde kayıtlıdır. Şimdi MOV ve LEA’ yı kullanarak yaptığım kırma işlemini inceleyelim.
LEA EAX, [EBP-28]
PUSH EAX
CALL 10001D08
ADD ESP, 04
LEA EAX, [EBP-14]
LEA ECX, [EBP-28]
PUSH EAX
PUSH ECX
Burada önemli nokta doğru kodu bulup yanlış olanıyla yer değiştirilmesidir. LEA EAX, [EBP-14], LEA EAX [EBP-28] ile değiştirildi. Bu işlem ile EAX içindeki doğru kod benim girdiğim sahte kodun yerine taşındı.
Program tekrar çalıştırıldığında unlock kod olarak istediğimiz bir sayı girdiğimizde hata vermiyorsa program kırıldı demektir.
Kayıtlı
Yazdır
Sayfa: [
1
]
Yukarı git
« önceki
sonraki »
ByKuS.OrG
»
TEKNOLOJİK BÖLÜM
»
Bilgisayar Dünyası
»
Konu:
Lisanssız programların zaman kilidinin kırılması