• HyperFilter | DoS Protection | DDoS Protection | DoS Mitigation | DDoS Mitigation | AntiDoS | AntiDDoS | Proxy Shielding

[ASM] - 1299 Knight OnLine Hackshield Kaldırma

  • Konbuyu başlatan Konbuyu başlatan 111Mutay
  • Başlangıç tarihi Başlangıç tarihi
1

111Mutay

Guest
Evet arkadaşlar, bu konumuzda sizlere orjinal 1299 KnightOnLine.exe'sinden hackshield nasıl kaldırılır onu izah edeceğim.



Öncelikle, orjinal exemizi unpackliyoruz. Unpack için yeterli bilgiye sahip olmayan arkadaşlar detaylı anlatıma ulaşabilirler.



Exeyi unpackledik. Sırada hackshieldi adım adım kaldırmak var. Exemizi Ollydbg ekranına sürüklüyoruz.



adszea.png




Exemiz yüklendi. CTRL - G tuş kombinasyonu ile 64B9B0 adresine gidiyoruz.



adsz2kw.png




Bu adres, oyunun ana voididir. Yani diğer adıyla entry point. Biraz inceleyelim.



adsz3ol.png




Resimde de izah ettiğim gibi, void içerisinde mutex kontrolü var. Oyunun iki kere açılmasını engelleyen şey bu mutextir*. Mutex kontrolünden dönen değer 0'sa yani mutex bulunamadıysa, oyun başlangıç işlemine devam edilir. 64B9EA adresinde de gördüğümüz gibi, mutex değeri 0B7(183) yani ERROR_ALREADY_EXISTS kodunu döndürmediyse, bir sonraki voide atlıyor. Bir sonraki voidi inceleyelim. (64BA06)



* 64B9EA adresindeki JNZ değerini JMP yaparak sınırsız client açabilirsiniz.



adsz4zf.png




Resimde de izah ettiğim gibi, bu etapta client HSUpdater.exe'yi çağırıyor ve çağırma işlemi başarılıysa açılışın bir sonraki adımına ilerliyor.(64BA19)



Burada yapacağımız şey, HSUpdater'i çağıran satırı NOP'lamak ve JNZ(Jump if Not zero)'yi JMP(unconditional jump)'a çevirmek. Yapalım.



adsz5r.png




Gördüğünüz gibi, HSUpdater'i çağıran voide giden call'ı NOP'ladık ve true-false kontrolü yapan JNZ Conditional Jump'unu JMP ile değiştirdik. Şimdi ise yine CTRL-G tuşuna basarak 5F6C1F adresine gidiyoruz.



adsz6q.png




Adresimizi yazdık, OK tuşuna basıyoruz.



adsz7s.png




CreateMainWindow voidinin içerisindeki bir kod satırındayız. Burada HackShield'in çalışıp çalışmadığını kontrol eden EhSvc.dll'yi çağıran voide giden bir call var. 5F6C1F'den 5F6C26'ya kadar NOP'luyoruz ve 5F6C28 adresindeki JNZ'yi JMP olarak değiştiriyoruz.



adsz8wt.png




Gereken işlemleri yaptık; son bir aşamamız kaldı. Oyunun general keystroke handler voidinin içerisine yerleştirilmiş bir kontrol daha var. Onu da etkisiz hale getirmemiz gerekiyor. CTRL - G tuş kombinasyonu ile 5F6CFD adresine gidiyoruz ve 5F6CFD ile 5F6D04 arasını NOP'luyoruz.(resimde 02 ve 04'ü noplamamışım, siz noplayın.)



adsz11f.png






Exemizi hackshield'ten arındırdık. Son aşama olarak kaydedelim.



adsz9xt.png




adsz10q.png




HackShield'siz exeniz hayırlı olsun 🙂



finalsd.png




Yardımcı olması dileğiyle, daha değişik konulardaki ASM yardım isteklerinizi özel mesaj yoluyla iletebilirsiniz.



PENTAGRAM / 10.12.2012















 
adamın dibisin çok teşekkür ederim.



---------- Yorum eklendi 20:09'da ---------- Önceki yorum 20:02'da ----------



bana programlama öğretsene panpa 😀
 
Anlatımı bu kadar hızlı anlatabileceğinizi düşünmemiştim, elinize sağlık ve aynı zamanda isteğimi dikkate aldığınız için teşekkür ederim.



Umarım herkese yararlı olur...
 
Cevap: [ASM] - 1299 Knight OnLine Hackshield Kaldırma



Anlatım güzel olmuş. Eline sağlık
 
Geri
Üst