Metin2 Tüm Hileleri Engellemek

Evet arkadaşlar serverınızda 7x-efsun botu-item çalma vs. hileleri engellemeyi anlatacağım.

Kısaca yapacaklarımızın özeti:
-Yeni tasarlanmış atak dosyalarını kullanarak 7xi engelleyeceğiz. ( PC dosyalarının bir etkisi kalmıyor bu konuda )
-MSS32.DLL' i Metin2 klasörüne atarak Exe'mize DLL injecte etmeyi engelleyeceğiz. (Efsun Botu, İtem Çalma DLL ile çalışır, böylece bunlar engellenmiş olur)
-Bu yaptıklarımızın değiştirilmemesi için Auto Patcher kullanacağız.
-Kişi muhakkak Auto Patcher Kullansın diye farklı exe'erden girişi engelleyeceğiz. ( Root aracılığı ile )
-Farklı exe'den girişi engellediğimiz root dosyasının değiştirilmemesi için de pack kilitleyeceğiz. 


Yani Farklı konuları birleştirerek tam koruma sağlayacağız 
------------------------------------------------------------------------------------------------------

1) 7X Engelleme [Yeni Tasarlanmış Atak Dosyaları]

Özel olarak hazırlanmış, sadece saldırı klasörü olan "pc" dosyasını kullanacağız. Bu dosyayı pack klasörüne attıklarında hileli PC dosyası kullansalar bile hile çalışmayacak. Çünkü oyun saldırı dosyalarını PC dosyasından değil altta paylaşacağım dosyadan alacak 

Bu linkteki dosyaları pack içine atıp "Index" i not defteri ile açıyoruz ve şu dizini ekliyoruz: (Saldırı dosyalarının PC'den değil bu dosyadan alması için şart)
Kod:
*
engel
*
------------------------------------------------------------------------------------------------------
2) Efsun Botu ve İtem Çalma Engelleme [DLL İNjectini Engelleyeceğiz]
Efsun botu için söyle bir çözüm üretilmişti. Navicat ve packten efsun nesnesi kodunu değiştirin.
Bu yeterli bir çözüm değil bence. Packten yeni koda ulaşıp bu kodu bota girebilirler!


Bunun için yeni bir çözüm yolumuz var. MSS32.dll exe start alınca otomatik çalışan bir dosyadır.
Eğer biz bu dosyaya dll inject etmeyi yasaklarsak sorun çözülür :
Yani Oyun başlayınca MSS32.dll devreye giriyor ve exe'ye dll inject etmeyi engelliyor.Böylece efsun botu kökten engellenmiş oluyor.
İtem çalma hileside dll aracılığıyla çalıştığı için bu da engellenmiş oluyor 


Gerekli Dosya :
------------------------------------------------------------------------------------------------------

3) Auto Patcher Şart =)
> Tüm bunları yaptık ama yinede auto patcher bize şart tam koruma istiyorsak nedenleri de şunlar :

1-Kişi Index'teki "engel" dizinini fark edip silerse 7x çalışır > Bunun için ındexi değiştirmesine olanak sağlamamalıyız! > Bunun için patcher şart!
2-Kişi mss32.dll dosyasını değiştirebilir. > Dll injectine olanak tanıyan bir mss32.dll kullanırsa efsun botu ve item çalma hilesini açabilir. > Bunun için patcher şart!

1-İşte auto patcher linkimiz:
İçinde yazılı anlatım var ama videolu anlatım istiyorsanız
 
Video linki :
------------------------------------------------------------------------------------------------------

Kafanıza Takılan şu tip sorular olabilir 
Soru 1 :
E bu adam patcher başlatmadan normal exe ile oyuna girerse hile açabilir

Cevabım = Evet bu mümkün ama biz patcherdan başka exe ile oyuna girilmesini engellersek ? 

Bunun Yapımı Şu Şekilde :
1-Öncelikle klasör ayarlarından uzantıları gizlemeyi devre dışı bırakın. (Denetim Masası - Klasör Seçenekleri - Görünüm(Klasör Görünümleri) - Bilinen dosya ve klasör için uzantıları gizle tikini kaldırın
2-Daha sonra oyunun exesine sağ tıklayıp ismini oyun ile alakalı olmayan, uzantısınıda bilinmeyen bir şekilde değiştiriyorsunuz(Örnek : config.smd , Oyuncular tahmin etmemeli onun exe olduğnu)
3-İsim ve uzantıyı değiştirdikten sonra root içindeki system.py açılır.
Kod:
import sys
import app
import dbg
import dbg
import sys
import os
Bu import komutlarını silin ve şunları ekleyin!
Kod:
import sys
import app
import dbg
import dbg
import sys
import os
if not sys.executable == os.getcwd()+os.sep+"config.smd":
        dbg.LogBox("Farklı Bir Exeden Giriş Yaptınız, Auto Patcherla Giriş Yapınız.", "Güvenlik Kalkanı")
        sys.exit()
Son durum bunun gibi olmalı
Kod:
import sys
import sys
import app
import dbg
import dbg
import sys
import os
if not sys.executable == os.getcwd()+os.sep+"config.smd":
        dbg.LogBox("Farklı Bir Exeden Giriş Yaptınız, Auto Patcherla Giriş Yapınız.", "Güvenlik Kalkanı")
        sys.exit()
4-config.smd örnektir siz değiştirdiğiniz ismi config.smd yerine girebilirsiniz.
5-Evet şimdi son işlem olarak Auto-Patcherin çalıştıracağı exe olarak config.smd yapıyoruz.
Böylece sadece patcher ile girişe olanak sağlanıyor.Normal bir exe ye tıkladığında isim farklı olduğu için açmıyor.Bu sayedede hileleri engellemek için uyguladıklarımız aktif oluyor 


------------------------------------------------------------------------------------------------------

Soru 2 :
Bu adam root dosyamızı karıştırıp farklı exe engellemesini yapan dosyayı bulup gerekli yeri silip patchersız oyuna girerse  ?
Yada root içinden ip alıp farklı bir pack ile girerse


Güzel Soru benim cevabım şu : ROOT'U KİLİTLERİZ =)

Bunun için root dosyasını Unepk vs. aracılığıyla açıyoruz 
Source klasörüne girip "oku.txt" adında bir metin belgesi oluşturuyoruz.
Bunu açıp içine ***Xxx kilitlemiştir*** yazıyoruz ve kaydediyoruz ( Yıldızlar önemli 3 er tane başa ve sona ekleyin )
Daha sonra source klasöründen çıkıp .xml dosyasını notepad++ veya normal not defteri ile açıyoruz.

Kod:


	
		<![CDATA[Source\uiachievement.py]]>
		<![CDATA[Source\936item_proto]]>
		<![CDATA[Source\936mob_proto]]>
Üstte böyle bir dizi yazı mevcuttur. Biz bu uiachievement.py dizininin üstüne şu iki komutu satırı ekliyoruz :
Kod:
            <![CDATA[Source\oku.txt]]>
	    <![CDATA[Source\oku.txt]]>
Yani son durum şu şekilde oluyor :
Kod:


	
		<![CDATA[Source\oku.txt]]>
		<![CDATA[Source\oku.txt]]>
		<![CDATA[Source\uiachievement.py]]>
		<![CDATA[Source\936item_proto]]>
		<![CDATA[Source\936mob_proto]]>
*Önce root dosyanızın yedeğini bir yere alın tekrar üstüne editleme yapabilmek için!

Bu işlemleri yaptıktan sonra root dosyamızı tekrar paketliyoruz.
Bu şekilde root'umuz kilitlenmiş oluyor. Basit ama etkili bir yöntem, açılamaz mı açılır ama bu profesyonellik gerektirir ve oyuncuların %90 ı yapamaz 


Yorumlar