flash2x screensaver builder version 2.0.2

maviboynuz

Program Url: http://flash2x.net/screensaverbuilder/

Program Tipi: süre kısıtlaması

     Araçlar: ollydbg, regmon

Basit ( x )  Orta ( )  Zor ( )  Pro ( )


Başlangıç

Selamün Aleyküm, programı pcworld dergisinin temmuz-ağustos 2005 disk2 adlı cd sinde buldum. belki şu anda daha yeni versiyonu vardır. program adında da anlaşıldığı üzere swf formatındaki movie clipleri ekran koruyucusu yapıyor. dergi tanıtımında 15 günlük deneme sürümü yazıyor ama ben kurdum 5 gün yazıyor. ne önemi var ki zaten sınırsız yapacağız inşallah. yanlış kod girip doğru kodu arayacağız. yazıyı yazdığımıza göre bulmuşuz. programın fiyatına cd nin açıklama kısmında 19.95$ yazıyor. ucuz olmasından korumasının dandik olduğu sonucunu çıkartıyoruz. ben bile hallettiğime göre gerçekten dandik.ne de olsa kulak değiliz. Delphi ile yazılmış. pack, crypto falan yok. maliyetten kısmışlar. kendileri herhalde bir koruma yapmışlar. pek başarılı değil ama yine de kırmaya değer.

Yazı

  

 Programı çalıştırdığımızda aşağıdaki uyarı mesajı bizi karşılıyor.

 

   

 Uyarı mesajı yaklaşık 5-6 sn sonra sizi programa yönlendiriyor tabi siz daha önce trial butonuna tıklamazsanız. Register butonuna tıklayalım.

 

 

User Name maviboynuz, Registration Code 123456789ABCDEF giriyoruz ve OK butonuna tıklıyoruz. ve karşımızda hata mesajı.

 

Mesaja bakıyoruz. O da ne bu bir hata mesajı değil. ingilizcemiz iyi olmadığından tam tercüme edemiyorum. ancak şöyle bir anlam çıkarttım. kayıt işlemi yapıldı, programı yeniden çalıştırın. Tamam butonuna tıklıyoruz ve program trial olarak çalışmaya devam ediyor. demek ki keygen algoritması ya program kapatılırken  yada açılırken yapılıyor. ben ilk önce program açılınca şansımı deneyeyim dedim. Programın girdiğimiz bilgileri bir yerlere yazması gerekiyor. Çünkü yazdığımız zaman kontrol etmiyor. önce filemon ile baktım kaydadeğer bir erişim yok. bir de regmon ile bakayım dedim programa. regmon, programı çalıştırdığınızda programın registeriden (kayıt defterinden) ulaştığı yerleri gösteriyor. regmon programını çalıştırın. ve şimdi de flash2x programını çalıştırın. evet biraz inceleyince ilgi çekici bir yer buldum.

 Demek ki girdiğimiz user name ve registration code registeriye kaydediliyor ve program ilk çalıştığında kontrol ediliyor. evet şimdi programda karşılaştırmanın nerede yapıldığını bulmak kaldı. dikkat edersek queryvalue fonksiyonu ile erişilmiş. bu fonksiyona breakpoint koyacağız. şimdi ollydbg yi açalım ve F3 tuşu ile Screensaverbuilder.exe dosyasını yükleyelim. ollydbg nin sağ tuş menüsünden search for oradan da all intermodular calls seçeneğini tıklayalım. açılan found intermodular calls penceresinden pencere başlıklarından olan destinationı tıklayalım ki fonksiyonlar alfabetik sıraya dizilsinler. evet şimdi bakalım queryvalue var mı? biraz farklı da olsa var. hemde 6 tane.

RegQueryValueExA olarak adlandırılmış herhalde programlardan kaynaklanıyor. tahminim ollydbg ve regmon aynı fonksiyonlara farklı isimler veriyorlar. ama queryvalue ortak değil mi? evet hepsine F2 tuşu ile breakpoint koyuyoruz. onlarda kırmızı renkli oluyorlar. evet F9 ile programı çalıştıralım. F9 tuşuna 9. defa bastığımızda programdaki uyarı mesajı görünüyor. o zaman 8. F9 da duralım ve registerlara bakalım veya F8 ile devam edelim.

bu aşamadan sonrası programın algoritması isteyenler çözebilir. fazla karışık değil. neyse F8 ile devam edelim. ikinci retn komutundan sonra şöyle bir yere geleceğiz. 3. ışıklardan sola dön gibi oldu.

şimdi gördüğünüz gibi karşılaştırma komutları yok F8 ile devam edelim. bu arada registerlara da bakalım. bişeyler yakalayabiliriz.

4E0B40 adresindeki call çağrısında bizim girdiğimiz kod ile gerçek kod karşılaştırılıyor. registerlara bakalım. eax de gerçek kod ve edx de bizim girdiğimiz kod. hayırlı olsun. gerçek kod 4E0B32 adresindeki call çağrısında hesaplanıyor. biraz inceledim. fazla karışık değil. dandik dedik ya. ayrıca bu program keygen yazılmayı hak etmiyor. keygen kodlayacağınıza delphiyi açın swf leri ekran koruyucu yapan programı kodlayın. evet buradaki gerçek kodu kaydedelim ve programa girelim. bakalım. böylece denemiş olacağız. kodu girdik ve ok butonuna tıkladık. programı yeniden başlatın mesajını aldık. programı kapatalım ve tekrar yeniden başlatalım.evet uyarı mesajını almadan program çalıştı. tamamdır. Help menüsünden Register seçeneği de kalkmış. About sekmesine bakalım tabi önce ve sonra.

evet registeriden regname ve regcode değerlerini silerek programı tekrar trial hale getirebilirsiniz. inşallah anlaşılmıştır. benim için anlaşılır oldu.

bu tutorialı hiç kimse için yazmadım. tek amacım konuyu daha iyi öğrenmek. unutmayın en iyi öğrenme başkasına öğretilirken olan öğrenmedir. hayırlı akşamlar.

 Son Notlar

program kodları parayı hak ediyor ama fazlasını değil. yine de bir programdan para kazanıyorsanız, programı satın alınız. Bu tutorial yalnızca bilgi vermek maksadıyla yazılmıştır. kötü bir amacımız yok yani. farklı bir amaçla kullanılacak olursa sorumluluk kabul edilmeyecektir. Lisansız kullanımdan tutoriali hazırlayanlar sorumlu değildir.  Belki de programları daha çok insan tarafından kullanılsın diye korumaları bu kadar basit. Acaba lisanssız kullanım engellense insanlar lisans mı alır? yoksa programdan vaz mı geçerler?. Neyse Formda bilgi paylaşan herkese teşekkürler. 

E-Mail: maviboynuz@mynet.NOKTA.com