Yaw firexcim hepimiz vb ciyiz c# cıyız yapma :)))))) decompiler falan:... Şaka yapıorum güzel palasım tşk... yeni okuyacağım... Buralar bizden sorulur... Ravage@tahribat.com

hocam sen dehşet tesisin ellerine saglık ANDY // Entelkoylu. Com Burası mezopotamya, küresel oyunun bumerang cehennemi. Tanrı bile dünya düzeni için peygamberlerini hep buraya gndermiş. Çünkü burası aslında yeryüzü cennetiymiş. Daha Fazla Bilgi İçin Profilimi İnceleyiniz...

abi bunlar copy paste değil demi :S sen yazıorsun? harbi emeğine sağlık :S:S Her türlü piping işleriniz itina ile yapılır.

//Yeni bir dkümanla daha karşınızdayım :) Bu yazımda DeDe ve VB Decompilerı konu aldım. nceki dkümanlarıma bazı konulara yabancı kalmamanız için gzatmanızı tavsiye ederim. Dkümanları 0'dan tamamen ben yazdığım için rnek program yazması, araştırması yazıları destekleyici materyaller yazım vs saatlerimi alıyor. O yüzden okuyan arkadaşlar yorumlarını, eleştirilerini eksik etmezlerse sevinirim. Bu ve diğer dkümanlarım hakkında soracaklarınız yada reverse engineering hakkında soracaklarınız varsa sorularınızı bekliyorum. Bu konuda beni destekleyen arkadaşlarıma ve dküman bankasına ekleyen reneye teşekkür ederim.//Merhaba arkadaşlar bu yazımda Delphi ve Visual Basic programlarında işimizi kolaylaştıracak DeDe ve VB Decompiler programlarından bahsedeceğim. Reverse Engineering'de en kolay gzlem ortamı C++ ile yazılan programlarda daha sonra Delphide ve Visual Basictedir. Sebebi C++ esnek ve ileri düzey programlama ortamı sağlamak adına bazı şeyleri kullanıcıya bırakmasıdır. rneğin Microsoft Visual C++'da Windows arayüzlü programlar yazmak için apilerden yada MFC kütüphanesinden yararlanırız. Fakat Delphi ve Visual Basic'de form hazır bir şekilde sunulmakla birlikte bileşenlerde sürükle bırak mantığının olması işi oldukça kolaylaştırmakta kaybolan süreyi azaltmaktadır. Aslında Microsoft Visual C++ derleyiciside bir sihirbaz yardımıyla basit bir taslak form ve bazı bileşenleri programcıya sunar. Fakat Delphi ve Visual Basic'inkiyle karşılaştırılınca çok daha ilkel birşey karşımıza çıkar. C++ felsefesini anlatarak uzun uzadıya konuyu dağıtmamak adına asıl konumuza dnersek Delphi ve Visual Basic'de birçok şey hazır sunulduğu için bir Visual Basic'de derlenmiş programın yada Delphi'de derlenmiş programların genel yapısı çzüldüğü için bazı şeylere erişim daha kolay hale gelmiştir. C++ programlarında da resource editorlerle form zelliklerinde kısmen değişiklikler yapılabilir. Fakat daha sonra greceğimiz üzere Delphi ve Visual Basic programlarınki kadar değil. Çünkü iş sadece form zellikleriyle bitmemektedir. rneğin Visual Basic form zelliklerini... isimle veri olarak dosyaya kaydediyorsa daha sonra o verileri değiştirerek form zellikleriyle oynayabiliriz. xxxxxx adresindeki 0 verisi... butonunu false ediyorsa oraya 1 koyarak enable edebiliriz. Bunlar derleyici tarafından dosyaya yazıldığı için daha sonradan işlevleri anlaşılabilir. Fakat kod yapısı programcıya kaldığı için program kodlarını Delphi, Visual Basic yada herhangi bir dilde geri getirme şansımız olmaz. Disassemble eder ve assembly kodlarını üzerinde assembly bilgimizi kullanarak değişiklikler yapabiliriz. Fakat bir yere kadar. Çok uzun ve yorucu bir işlemdir. Orada neler gerçekleştiğini apilere bakarak aşağı yukarı anlayabiliriz. Üstüne kodda işimize yarayacak blgeyi bulmalı ve orayı iyice analiz etmemiz gerekir. Bu yüzden derlenmiş programlar üzerinde yaptığımız değişiklikler genelde ufak tefek şeyler olur. Çünkü yerine gre bu işler saatlerimizi, günlerimizi alır. . Net platformu için geliştirilen programların durumu nlem alınmazsa bunlara gre çok daha vahimdir. Bu konu hakkında ayrıntılı bilgiyi. Net hakkında yazacağım dkümanımda vereceğim. Nag screenlerin, kod bloklarının olduğu yerleri uzun süre arayarak vakit kaybetmek yerine bu programlarla kısa yoldan adreslerini alarak o blgeye konumlanır ve yapacağımız şeyleri yerine getiririz. Delphi için DeDe, Visual Basic içinde VB Decompiler ve alternatif programlar yeralmaktadır. Fakat sizleri ilk olarak Delphi'de Visual Basic'de yazılan programların yapısını incelemenizi değişikler yaparak sonuçları gzlemlemenizi tavsiye ediyorum. Bunlar hakkında yeterli bilgi sahibiyseniz bu tür programları kullanmanız yararınıza olacaktır. Çünkü amacımız harcadığımız zamanı kısaltmak birilerine birşey yaptırmak değil. O zaman birilerine bağımlı kalmış oluruz ve asla ileriye gidemeyiz. Bu yazımda olanları daha iyi gzlemleyebilmek amacıyla shareware Delphide ve Visual Basic'de yazılmış iki program buldum. Sizde download sitelerinde shareware kategorisinde programlar aratıp kırmayı deneyebilirsiniz. En büyük haz bu iş için yazılmış olan crackmeleri kırarak değil. Gerçek programları kırarak alınmaktadır. Piyasada büyüklü, küçüklü birçok program mevcut alın uğraşın biraz (:GerekenlerOllydbgDeDeVB Decompiler LitePeid Aspack ile packlenmiş olan programı unpack etmek için unpacking dkümanımı okuyabilir yada nasıl manual unpack edileceğini bilmiyorsanız hazırcılık yaparak stripper 2.07 sürümü ile unpack edebilir yada benim unpack ederek paylaştığım exe ile değiştirebilirsiniz. rnek programlarAbsolute GIF Optimizer 1.01http://www.pcbit.com/ftp/gifoptsetup101. exeUnpack Edilmiş exehttp://rapidshare.com/files/29491554/gifopt. rar.htmlAcme Photo ScreenSaver Maker 1.90http://www.acme-photo-screensaver-maker.com/download/apssme. zipncelikle peid ile dosyayı seçerek packlenmişmi veya derleyicisi nedir vs hakkında bilgi alalım. Programı açıp "..." olan butona basıp dosyayı seçmeniz yeterli. Eğer peid o packer hakkında bilgi alabileceği signature'ı tanıyorsa gsterecektir. Tanımıyorsa ikinci alternatif olarak RDG Packer Detector kullanabilirsiniz. O da tanımıyorsa iş size kalacağı için uzayacak. Şimdi ilk olarak Delphide yazılmış olan "Absolute GIF Optimizer 1.01" programına ve DeDe'ye gzatalım. Program register edilebilir şekilde. Fakat DeDe'nin kullanım mantığını gstermek amacıyla register etmeyince karşımıza çıkan nag screen'i kaldıracağız. Programın register edilme kısmını olly ile kendimizde halledebiliriz. Programın register kısmının kırılması zor değil. ncelikle DeDe'yi açıyoruz ve resimdeki butona basarak programı seçerek process butonuna basıyoruz. İşlem başarılıysa "... target is fully loaded" ve "dump successfull" mesaj pencereleri gelecek. Process butonuna bastıktan sonra işlemin süresi programa gre değişebilir bekleyiniz. En sonda daha ayrıntılı analiz yapılmasını isteyip istemediğimizi soracak bunları no diyerek geçebiliriz. Gerek yok. Herşey tamamlandıysa üsteki tabları gezerek biraz gzatalım. Form, prosedür isimleri, unitler, classlar, assembly kod blokları vs birçok şey derli toplu bir şekilde sizi karşılayacak. Buraları inceleyerek programı register formunu ve register butonuna basınca hangi kodların çalıştırıldığını grebilirsiniz. Şimdi bizim için gerekli olan şeyi yapıyoruz ve forms tabını seçiyoruz. Burada formların isimlerine ve form zelliklerini inceleyerek bize gerekli olanı buluyoruz. Biz nag screeni arıyoruz. Nag screende grdüğümüz kadarıyla başlığı about ve üstünde şirketin internet adresi vs yazmakta. Resimdede grdüğünüz üzere bilgiler tutuyor aradığımız form o. Daha sonra procedures blümüne geçiyoruz ve classnamede TAboutBox'ı greceğiz zaten onu seçiyoruz. Resimde grüldüğü üzere events blümünde FormCreate var. Bizim için nag screen'in yaratıldığı yer nemli o yüzden onun adresi olan RVA'sını 48C0C0 değerini alıyoruz. Bu kadarı bizim için yeterli. DeDe ile işimiz bitti. Şimdi OllyDbg'a geçiyoruz ve programımızı açtıktan sonra assembly kodlarının olduğu blümde sağ tıklayıp goto->expression'a not aldığımız adresimizi giriyoruz ve okleyerek gidiyoruz. O noktaya ulaşıyoruz ve deneme amacıyla bir breakpoint koyuyoruz ve programı çalıştırıyoruz. Eğer program tam nag screen çıkacakken durmuşsa doğru yoldayız. Alttaki resimdeki kod blogunu grene kadar çalıştıra basıyoruz. Şimdi breakpoint ile program durakladı. Şimdi yapmamız gereken buraya nerden geldiğimizi ğrenmek ve bir üst konuma çıkmak. Onun için sağ alt kşedeki stack penceresine bakıyoruz. Orada en üstte return to xxxxxx greceksiniz. Demekki o adresten buraya gelmişiz ona resimdeki şekilde sağ tıklıyoruz ve follow in disassembler dedikten sonra oraya gidiyoruz. Buradaki system stack penceresinden bu tür işlemleri kontrol edebiliriz. Resimdede grdüğünüz üzere oraya ulaştık orada grdüğünüz call'a breakpoint koyunca nag screen çıkacakken programın duraklamasından doğru olduğunu anlıyoruz. Hemen üstünde je şartlı zıplama noktasını grüyoruz ve orayı incelediğimizde eğer oradan zıplarsak nag screen'i atladığımızı ve program akışına devam ettiğimizi grüyoruz. Bu sebeple onu şarta gre değilde sürekli zıplaması için je'yi jmp olarak değiştiriyoruz. Bunu yapmak için koda tıklıyoruz ve çıkan pencerede je'nin yerine jmp yazıyoruz adreslere dokunmadan ve assemble tuşuna basıyoruz. Bunu yaptıktan sonra o kodun üstünde sağ tıklayıp copy to executable->selection dedikten sonra karşımıza çıkan pencerede sağ tıklayıp save file diyoruz ve kaydediyoruz. İşlemleri doğru yaptıysak program sorunsuzca nag screen olmadan çalışacak. Şimdi sıra VB Decompilera geldi."Acme Photo ScreenSaver Maker" isimli programımızı VB Decompiler ile "..." butonuna tıklayarak seçtikten sonra decompile sorulan mesaj penceresine yes diyerek decompile ediyoruz. İşlem biraz sürebilir. Bitince decompile ok mesaj penceresi çıkacak. Bu programda yapacağımız register işlemlerinin gerçekleştiği yeri bulmak. Aslında bunu Olly ilede yapabiliriz. Fakat yeri geldiğinde VB Decompiler işimize çok yarayacak o yüzden mantığını ğrenmemiz lazım. Register blümüne bakınca aboutbox altında aynı form üstünde belirdiğini grüyoruz. O yüzden VB decompiler'da frmabout isimli formu seçiyoruz ve yine register formunda yazanlarla oradakileri karşılaştırıyoruz doğru yere baktığımıza emin olmak için. Doğru yerdeysek alttaki code blümünden frmaboutu buluyoruz ağacı açarak inceliyoruz. Hepsine teker teker gzatıyoruz ve karşımıza resimde grdüğünüz üzere aradığımız şey çıkıyor. Solunda yazan RVA adresini alıyor (493B19) ve Olly'e geçiyoruz. Asm kodlarının olduğu blümde sağ tıklıyoruz ve goto->expression'a adresi yazıp oraya konumlanıyoruz. Bundan sonra yapacağımız üstteki zıplama noktalarına bakmak olacak. Biraz üstlerde programın register edilip edilmediğinde rol oynayan iki nemli zıplama noktası olacak. Bunların yerlerini breakpointler koyarak kendiniz bulabilirsiz. Zıplamanız gerekiyorsa jmp geçmeniz gerekiyorsa nop koyarsanız program kırılmış olacaktır. Bu yazımda DeDe ve VB Decompilerın kullanımlarını konu aldığım için onları uzun uzun anlatmıyorum. Bu yazı ve grsel materyaller tamamen -anonimleştirildi- aittir. Kopyalayanlar emeğe saygı duyarlarsa sevinirim. Saygılarımla..-anonimleştirildi-

Eyw Firex Çok SaoL, Emeğine SağLık Alim ile Sohbet Etmek Zümrüt ile incidir, Cahil ile Sohbet Etme Günde Bin Can incitir. Alim ile Sohbet Etmek Mertebe, Cahil ile Sohbet Etme Dnersin Merkebe, Eşek Alim Olmaz Kitap Taşımakla Tekkeye, insan da Hacı Olmaz Gitmekle Mekkeye.

Hoca aldım masaüstüne ekleyecem :)Saol :) Sanıyorum kendi ataszümü yaptım, kaynak belirterek kullanabilirsiniz. 10.05.2013 tarihli google arama sonucu : Aradığınız - "herşeyin hayırlısı rampanın bayırlısı" - ile ilgili hiçbir arama sonucu mevcut değil. Not : Syleyeni belli olduğu için ataszü değil, zlüsz oluyormuş, dolayısı ile kendi zlüszümü yapmış oldum :)

haklısın maxdrea.. katılıyorum, isteyenler bakıyor.. FireX thnx Buralar bizden sorulur... Ravage@tahribat.com

firex hocam cok sagol ya, çok iyi iş cıkarmıssın, ben burada bilmedigim çok şleyi ogrendim ve ogrenmeye de devam ediorum.. :) devamını bekliyorum hocamm..

eyw gerçi daha gelemdik buralara ama

Kontrol ettim hocam tamamdır. Sağol tekrar.

ya hoca firex in boyle konularda c/p yaptığı grülmedik sey gorulmezde herhalde, efsun sanırım saka yaptın... neyse gecenin bu saatinde bana cvp yazdırıonuz yaw... saat:24:40 Buralar bizden sorulur... Ravage@tahribat.com

Word e c/p yaptım duruor :D yarın okurum yine dktürmü$sün hoca (:

ya octopus hacı bırak boşver bakan grenmek istiyen bakıyor yorum yazıyor.. bi siyaset konusu olsa eh yane... iyiki yasaklandı oh yni neyse herzmn arkandyz firex=) " ' "

Dostum walla eli pülecek adamsın, bende ble bişiiler arıyordum.. Helal olsun, saygılar!.. Cubylai

bir firex başyapıtı eline sağlık hojam 1o numara

aq vb programlarımızı illa kide tescillettirceniz yani. TBT'ye Mescit istiyoruz.

heeeyyy hacılar yaw adam size yazıveriyor valla giren sayısı 40... olmuyor kıymet bilmiyormuyuz... Buralar bizden sorulur... Ravage@tahribat.com

: abi bunlar copy paste değil demi :S sen yazıorsun? harbi emeğine sağlık :S:S Küfür etseydin hoca. İsteyen istediği yerde aratır. Saatlerce emek harcıyorum bunlara. Byle şeyler yazan olursa kızarım. Zaten yazdığım dkümanların hepsinde kendi programlarımı kullandım. Bunda zorunlu olduğum için başkalarının programlarını hedef aldım. Reverse engineeringle ilgili eklediğim herşey tamamen bana ait. Ayıp ettin cidden

süpersin hoca.. zgürlüğü anladıkça ona daha az sahip olursun.

: eyw gerçi daha gelemdik buralara ama ya ben de gelemeyip de gelenlerin emeğine saygı duyanlardanım :) Bu niymiş la?

hacım çok iyi herşey çok açık... Alkış. Abra Kadabra

eywallah hacı süper tesi oldu reverse dkümanları =) helall osun.) " ' "

hocam arşive ekledim bi kontrol edersen sevinirim :) Sanıyorum kendi ataszümü yaptım, kaynak belirterek kullanabilirsiniz. 10.05.2013 tarihli google arama sonucu : Aradığınız - "herşeyin hayırlısı rampanın bayırlısı" - ile ilgili hiçbir arama sonucu mevcut değil. Not : Syleyeni belli olduğu için ataszü değil, zlüsz oluyormuş, dolayısı ile kendi zlüszümü yapmış oldum :)