SpyRemover v2.67

kresuz
Program Url: www.itcompany.com
Program Tipi:Spy siliyor
     Araçlar:
OllyDbg v1.10,Dup2
Basit (X)  Orta ()  Zor ( )  Pro ( )


Başlangıç

Programlar demo limitle korunuyor.Fonksiyon kısıtlaması var.Register olayını online yapıyor.Ayrıca serial algoritmasında bütün cryptolar kullanılmış(MD5 den DES e kadar.Peidle bakın) Bizde programa baska yönden yaklaşacağız.Program kayıtlı oldugu zaman, aradığı degerler var diyeceğiz.İşe başlayalım.
Yazı

Program acıldığı zaman register bölümü var.(Help menüsünde de var)

 
Ben işe buradan başladım.Programı ollydbg de yükleyin.Çalıştırmayın.Data ref.stringlerde Register yazısını arayıp bulun.
 
0062C292 MOV ECX,Remover.0062F2CC ASCII "Register" ==>Çift tıklayın 0062C4D1 MOV EDX,Remover.0062F2E0 ASCII "Help" 0062C516 MOV ECX,Remover.0062F2CC ASCII "Register" ==>Çift tıklayın 0062C553 MOV ECX,Remover.0062F2E0 ASCII "Help" 0062C590 MOV ECX,Remover.0062F2F0 ASCII "About" 0062C5D2 MOV EDX,Remover.0062F300 ASCII "Setup" 0062C6F6 MOV EDX,Remover.0062F310 ASCII "Actions"

İlk yere çift tıklayınca

0062C288    .  E8 1F810100       CALL Remover.006443AC      ==>F2 ile breapoint koyun.
0062C28D    .  84C0              TEST AL,AL
0062C28F       74 13             JE SHORT Remover.0062C2A4
0062C291    .  55                PUSH EBP
0062C292    .  B9 CCF26200       MOV ECX,Remover.0062F2CC             ;  ASCII "Register"
0062C297    .  BA 01000000       MOV EDX,1
0062C29C    .  33C0              XOR EAX,EAX
0062C29E    .  E8 A9ECFFFF       CALL Remover.0062AF4C
0062C2A3    .  59                POP ECX                              ;  kernel32.7C816D4F
0062C2A4    >  8B45 FC           MOV EAX,DWORD PTR SS:[EBP-4]

ikinci yere çift tıklayınca

0062C4FA    .  E8 AD7E0100       CALL Remover.006443AC      ==>F2 ile breapoint koyun
0062C4FF    .  84C0              TEST AL,AL
0062C501       74 3D             JE SHORT Remover.0062C540
0062C503    .  8B4D 88           MOV ECX,DWORD PTR SS:[EBP-78]
0062C506    .  B2 01             MOV DL,1
0062C508    .  A1 08624A00       MOV EAX,DWORD PTR DS:[4A6208]
0062C50D    .  E8 12B4E7FF       CALL Remover.004A7924
0062C512    .  8945 84           MOV DWORD PTR SS:[EBP-7C],EAX
0062C515    .  55                PUSH EBP
0062C516    .  B9 CCF26200       MOV ECX,Remover.0062F2CC             ;  ASCII "Register"
0062C51B    .  BA 01000000       MOV EDX,1
0062C520    .  B8 03000000       MOV EAX,3
0062C525    .  E8 22EAFFFF       CALL Remover.0062AF4C
0062C52A    .  59                POP ECX                              ;  kernel32.7C816D4F
0062C52B    .  8BD0              MOV EDX,EAX
0062C52D    .  8B45 84           MOV EAX,DWORD PTR SS:[EBP-7C]

Burada dikkati çeken olay iki yerde aynı call (CALL Remover.006443AC ) dönüsü kontrol yapılıyor.

0062C288    .  E8 1F810100       CALL Remover.006443AC       ==>İlk önce burada durdu.   F7 ile calle girelim
0062C28D    .  84C0              TEST AL,AL                  ==>Sonuc 01 demo. Registerli ise AL=0 olmalı
0062C28F       74 13             JE SHORT Remover.0062C2A4   ==>Burayı jmp yapmak işe yaramıyor.Fonksiyon 
0062C291    .  55                PUSH EBP                      ;kısıtlaması devam ediyor.
0062C292    .  B9 CCF26200       MOV ECX,Remover.0062F2CC             ;  ASCII "Register"
0062C297    .  BA 01000000       MOV EDX,1

CALL Remover.006443AC  e F7 ile girince.

006443AC    $  55                PUSH EBP             ===>Buradayız F8 ile ilerleyip AL degerlerine bakın
006443AD    .  8BEC              MOV EBP,ESP
006443AF    .  83C4 F0           ADD ESP,-10
006443B2    .  53                PUSH EBX
006443B3    .  56                PUSH ESI                             ;  Remover.004B3220
006443B4    .  57                PUSH EDI                             ;  ntdll.7C900738
006443B5    .  33D2              XOR EDX,EDX
006443B7    .  8955 F0           MOV DWORD PTR SS:[EBP-10],EDX
006443BA    .  8945 FC           MOV DWORD PTR SS:[EBP-4],EAX
006443BD    .  33C0              XOR EAX,EAX
006443BF    .  55                PUSH EBP
00644408    .  74 34             JE SHORT Remover.0064443E
0064440A    .  BA 94446400       MOV EDX,Remover.00644494             ;  ASCII "CLSID"
0064440F    .  8B45 F4           MOV EAX,DWORD PTR SS:[EBP-C]
00644412    .  E8 BDAEE0FF       CALL Remover.0044F2D4
00644417    .  3C 01             CMP AL,1
00644419    .  75 23             JNZ SHORT Remover.0064443E
0064441B    .  8D4D F0           LEA ECX,DWORD PTR SS:[EBP-10]
0064441E    .  BA 94446400       MOV EDX,Remover.00644494             ;  ASCII "CLSID"
00644423    .  8B45 F4           MOV EAX,DWORD PTR SS:[EBP-C]
00644426    .  E8 45AFE0FF       CALL Remover.0044F370
0064442B    .  8B45 F0           MOV EAX,DWORD PTR SS:[EBP-10]
0064442E    .  BA A4446400       MOV EDX,Remover.006444A4             ;  ASCII "{6B646E77-6A33-7066-6B73-6468736E732C}"
00644433    .  E8 F013DCFF       CALL Remover.00405828
00644438    .  75 04             JNZ SHORT Remover.0064443E
0064443A    .  C645 FB 00        MOV BYTE PTR SS:[EBP-5],0
0064443E    >  33C0              XOR EAX,EAX
00644440    .  5A                POP EDX                              ;  Remover.0062C28D
00644441    .  59                POP ECX                              ;  Remover.0062C28D
00644442    .  59                POP ECX                              ;  Remover.0062C28D
00644443    .  64:8910           MOV DWORD PTR FS:[EAX],EDX
00644446    .  EB 0A             JMP SHORT Remover.00644452
00644448    .^ E9 0B06DCFF       JMP Remover.00404A58
0064444D    .  E8 6E09DCFF       CALL Remover.00404DC0
00644452    >  33C0              XOR EAX,EAX
00644454    .  5A                POP EDX                              ;  Remover.0062C28D
00644455    .  59                POP ECX                              ;  Remover.0062C28D
00644456    .  59                POP ECX                              ;  Remover.0062C28D
00644457    .  64:8910           MOV DWORD PTR FS:[EAX],EDX
0064445A    .  68 6F446400       PUSH Remover.0064446F
0064445F    >  8D45 F0           LEA EAX,DWORD PTR SS:[EBP-10]
00644462    .  E8 890FDCFF       CALL Remover.004053F0
00644467    .  C3                RETN
00644468    .^ E9 9F08DCFF       JMP Remover.00404D0C
0064446D    .^ EB F0             JMP SHORT Remover.0064445F
0064446F       8A45 FB           MOV AL,BYTE PTR SS:[EBP-5]  ==>Evet aradığımız yer.Şu an [EBP-5] de 01  değeri var ve AL bu degeri alıyor.        
00644472    .  5F                POP EDI                       ;Kayıtlı olması için AL ye 0 degeri vermek gerekli.         
00644473    .  5E                POP ESI                              
00644474    .  5B                POP EBX                              
00644475    .  8BE5              MOV ESP,EBP
00644477    .  5D                POP EBP                              
00644478    .  C3                RETN
 
0064446F 8A45 FB MOV AL,BYTE PTR SS:[EBP-5] --------------------------------------------------------------------- Stack SS:[0012F757]=01 AL=4C ('L') --------------------------------------------------------------------- 0064446F 8A45 FB MOV AL,BYTE PTR SS:[EBP-5] ==>Orijinal

0064446F       B0 00             MOV AL,0                     ==>Patch
00644471       90                NOP
Bu şekilde patch yapıldıgında register bölümleri kalkmış ve silme bölümündeki kısıtlamada yok oluyor.
 
Aslında işimiz bitti.Ama about kısmınada imzamızı atalımda öyle bitirelim.(Yok md5 le korunuyormus vs .Ona kızdım. Ne yaparlarsa yapsın işte dandik bir koruma olmuş) Aboutta yazılan "Copyright 2003-2006 InfoWorks Technology Company" yazısı yerine imzamızı yazacağız.Bunu ultraedit-32 kullanmadan ollydbg ile yapacagız.

Data ref.stringlerde  Copyright 2003-2006 InfoWorks Technology Company  yazısını arayıp bulun.

0062AFEF   MOV EDX,Remover.0062B2AC    ASCII "Toolbar"
0062B06B   MOV ECX,Remover.0062B2C0    ASCII "http://www.itcompany.com/remover.htm"
0062B0B1   MOV ECX,Remover.0062B2F4    ASCII "To register, click on Buy Now at"
0062B0D6   MOV ECX,Remover.0062B320    ASCII "click here"
0062B11C   MOV ECX,Remover.0062B334    ASCII "To check the manual and read the frequently asked questions,"
0062B141   MOV ECX,Remover.0062B37C    ASCII "This software uses parts of the DelZip project (http://www.geocities.com/SiliconValley/Network/2114/)"
0062B161   MOV ECX,Remover.0062B3EC    ASCII "This software contains the RSA Data Security, Inc. MD5 Message-Digest Algorithm."
0062B19E   MOV ECX,Remover.0062B448    ASCII "Copyright 2003-2006 InfoWorks Technology Company"
0062B1DB   MOV ECX,Remover.0062B484    ASCII "Find and Remove Intrusive Spy Devices. Protect Your Online Privacy."
0062B244   MOV ECX,Remover.0062B4D0    ASCII "Version 2.67"
0062B264   MOV ECX,Remover.0062B4EC    ASCII "SpyRemover"
0062B2AC   ASCII "Toolbar",0
0062B2C0   ASCII "http://www.itcom"
0062B2D0   ASCII "pany.com/remover"
0062B2E0   ASCII ".htm",0
0062B2F4   ASCII "To register, cli"
0062B304   ASCII "ck on Buy Now at"
0062B314   ASCII 0
0062B320   ASCII "click here",0
0062B334   ASCII "To check the man"
0062B344   ASCII "ual and read the"
0062B354   ASCII " frequently aske"
0062B364   ASCII "d questions,",0
0062B3AC   ASCII "http://www.geoci"
0062B3BC   ASCII "ties.com/Silicon"
0062B3CC   ASCII "Valley/Network/2"
0062B3DC   ASCII "114/)",0
0062B448   ASCII "Copyright 2003-2"  ==>Çift tıklayın
0062B458   ASCII "006 InfoWorks Te"
0062B468   ASCII "chnology Company"
0062B478   ASCII 0
0062B484   ASCII "Find and Remove "
0062B494   ASCII "Intrusive Spy De"
0062B4A4   ASCII "vices. Protect Y"
0062B4B4   ASCII "our Online Priva"
0062B4C4   ASCII "cy.",0
0062B4D0   ASCII "Version 2.67",0

0062B19E   MOV ECX,Remover.0062B448    ASCII "Copyright 2003-2006 InfoWorks Technology Company" Burayı değiştirelim.
MOV ECX,Remover.0062B448  demek, 0062B448 satırındaki   ASCII degerleri ECX e al demektir.
Bunun icin 0062B448   ASCII "Copyright 2003-2" satırına çift tıklayın.
 
0062B448 satırı üzerinde iken CTRL+E yapın.
 
ASCII yazan yere imzanızı yazın diğer yerleri space tusuna basarak silin.Yanlız sileceginiz yerler sadece yazılan yerler olsun Fazla yeri silmeyin.Kac byte varsa o kadar silin.ve OK. tuşuna basın.
 
Şimdi 0062B458 satırına tıklayın.Üzerinde CTRL+E yapın.Yazılan yazıyı space tusuna basarak silin.Kac byte varsa o kadar silin.ve OK. tuşuna basın. 0062B468 satırı üzerindede aynı işlemleri yapın.Programı ollydbg de saklayıp cıkın.Şimdi abouta bakın.
 


Bu tutoriali yazmaktaki amacım programcılara ,programlarını daha iyi korumaları için yol göstermektir..
Son olarak şunu söyleyeyim:Bir programı kullanarak para kazanıyorsanız,o programı mutlaka satın alın.Emeğe değer verin...
Lisansız kullanımdan tutoriali hazırlayanlar sorumlu değildir.

Son Notlar
Bu yazıda yazım yanlışları , bilgi hatası olabilir.Eğer bir yanlış bulursanız bana mail atın düzeltmeye çalışırım.

E-Mail: kresuz

http://kresuz.zor.org
http://kresuz.da.ru

;