Natural

natural

Breaking News

ASProtect 1.2x - 1.3x [Registered] Manuel Unpack

Program Url: www.elvanpark.com
Program Tipi: Evrak Takip programı

Araçlar:
OllyDbg v1.10,Peid,Import REConstructor v1.6,Aspr2.XX_unpacker_v1.0E script,ODbgScript.dll 1.47,aspr2.dll


Elvanpark ın Evrak Takip programı na bakacagız.Program peide göre ASProtect 1.2x - 1.3x [Registered] ile pack yapılmış.RDG v0.65 e görede ASProtect v2.xx Biz asprotect i script ve plugin yardımıyla aşacagız.Bunlar olmasa işimiz gercekten cok zor olur.OEP i bulmak ve import tablosunu oluşturmak icin cok uğraşırdık. Gerekli programlar ,script ,imprec pluing bu linkde hazır bir sekilde var.

Aspr2.XX_unpacker_v1.0E script i normal olarak ollydbg de calışmıyor.Sanırım Çinlilerin yazdıgı,ODbgScript.dll 1.47 
dosyasına ihtiyac duyuyor.Bu dll de ancak modifiye edilmiş ollydbg de calısıyor.Yukarıdaki linkden dosyayı cekin.
Ollyasprotec.zip dosyası icindeki oll.exe yi çalıstırın.Aspr2.XX_unpacker_v1.0E script i ve hidedebugger yüklüdür.
İmprec.zip dosyasında da aspr2.dll vardır.
Biraz da unpack işlemi sırasında geçen olaylar ve terimlerden bahsedelim.Konuları daha iyi anlamak için SCTZiNE #14 
sayısında Blue_Devil in yazdıgı 5. Unpacking giriş yazısını iyi okuyun.Yazıdan alıntı yapıyorum.

1. OEP bulunması

Arkadaşlar her programın bir başlangıç noktası vardır. Bir Packer paketlediği programın OEPsini saklar kendi OEPsini 
programa yazar. Bizim amacımız programın gerçek OEPsini bulmak, çünkü paketlenmemiş saf kodlar oradan başlamaktadır.
Packer/Protector, OEPyi saklar, kendi kodlarını çalıştırır, ve OEP'ye memory'de yani hafızada dallanır.

2. DUMP İşlemi

Çoğu insan DUMP kelimesinin anlamını bilmez. Sanırım şu şekilde açıklarsak akılda kalıcı olur. 
Packer algoritması bittikten sonra packer programı OEP atlatır ve gerçek kodlar hafızaya açılır ve oradan okutulur. 
İşte biz Bu anda bir memory dump yaparak hafızaya açılmış olan paketlenmemiş saf kodları sabit diske yazarız.

3. Import Table Düzenlenmesi

Her zaman gerekli olmamakla beraber, benim uğraştığım bir kısım programda Import Reconstructor ile programların import 
table'larını düzenlemek gerekmektedir. Bazende bunu elle Olyydebugerda ya da bir hex editörü ile yapmak zorunda kalabilirsiniz.

Thanks to Blue_Devil

Yani unpack için üç işlem yapılıyor(oep,dump,import tablosunun düzenlenmesi)
Şimdi işe baslayalım.

I- Original EntryPoint(OEP) Bulunması

Önce peidle bakıp program neyle Pack yapılmış ögrenelim..



 
 Lbr68.exe yi calıstırın.Ollydbgde programı yükleyin.Çalıstırmayın.Pluings menusunu tıklayın.



Şİmdi Aspr2.XX_unpacker_v1.0E isimli script çalışdı.

 



01390042     0000                 ADD BYTE PTR DS:[EAX],AL ==burada durdu.
01390044     0000                 ADD BYTE PTR DS:[EAX],AL

OEP i buldu.(OEP=41FEA0)Şimdi tamam tuşuna basın.

II- Dump yapmak.

Pluings menusunu tıklayın.

 


Dump yapacagız.Amac OEP i belli olan, ASProtect siz ama import tablosu olmayan bir dosya yaratmak.


Bu dosya Import REConstructor v1.6 için lazım olacak.OEP bölümüne (otomatik olarak yazmazsa) 41FEA0 yazın.
Dump tusuna basın ve unpak.exe  diye kaydedin.F9 veya Run tuşuna basarak programı çalıştırın.


III-Import Reconstructor ile Import Rebuilding


Şimdi Import REConstructor v1.6 yi açın.(Ollydbg ve program çalışsın)Attach to Active Process bölümünden etakip.exe yi secin.

 


OEP bölümüne 0041FEA0 yazıp IAT AutoSearch tuşuna basın.Bize olması gereken RVA ve Size degerlerini gösterdi.Tamam tuşuna basın.

 
 

Olması gereken RVA ve Size degerleri yazdıkdan sonra önce Get Import tusuna basın.Bize (aralarında bozukda olan) importları bulacaktır.
İmport tablolarını bulduktan sonra Show Invalid tusuna basın.Sadece bozuk olanlar işaretlenecektir.
 


Secilmiş olan bozuk importları tamir etmeye çalışagız.Bunun icin yazılmış olan hazır pluginleri kullanacagız. 
Tablolar üzerinde sağ tuş yapın.aspr2 ye tıklayın.Tamir işlemi başladı.Biraz bekleyelim.



İşlem bitti.



Show invalid tusuna bir daha basalım.Artık şu an gördüklerimiz gecersiz tablolar.Bunların üzerinde sağ tuş yapın.Cut thunk(s) a
basarak bunları ayıralım.




Evet şu an düzenlenmiş ve temiz olan(içinde gecersiz importlar olmayan)import tablosu oluşturuldu.Fixdump tuşuna basın.Daha önce 
ollydbg de dump yaptıgımız exe yi gösterin.



 


ollydbg de dump yaptıgımız ama import tablosu olmayan exe ye yukarıda anlattıgım düzenlenmiş ve temiz olan(içinde gecersiz importlar olmayan)
import tablosu basarıyla aktarıldıgını Import REConstructor v1.6 söyledi.




Peidle bir bakalım.Evet artık asprotec yok.Ama bu dosya çalışacakmı acaba .Yeni olusan dosyaya tıklayın.(bulundugu direktörde 2 tane görürsünüz
dikkat edin.Biri dump yaptıgınız digeri yeni olusturdugunuzdur.En son oluşanı, _ uzantısı olanı calıştırın)
 





 


Evet mutlu son.Asprotec den tamamen kurtulmuşuz.Crack işi bundan sonra basit.Onuda kendiniz yapın.


Aspr2.XX_unpacker_v1.0E script in paylaşımı yapan MTCT den hayalet e  teşekkürler.

Hiç yorum yok