Merhaba TurkHackTeam üyeleri,
Bugün sizlere Python ile nasıl basit bir hile yazılabileceğini anlatacağım. Ancak şunu baştan belirtmek istiyorum: Bu bilgiler tamamen eğitim amaçlıdır. Amacım, bellek yönetimi ve programlama konularında bilgi paylaşarak sizlerin teknik becerilerini geliştirmenize yardımcı olmak. Oyunların bellek adreslerini paylaşmayacağım, çünkü bu tür bilgilerin kötüye kullanılma riski var. Bunun yerine, genel bir yaklaşım ve mantık üzerinden giderek, nasıl bir hile yazılabileceğini anlatacağım.
1. Hile Yazmanın Temel Mantığı
Hile yazmanın temelinde, bir programın (örneğin bir oyunun) bellekte tuttuğu verilere erişmek ve bu verileri değiştirmek yatar. Örneğin, bir oyunda karakterin hızı, canı veya parası gibi değerler bellekte saklanır. Bu değerlere erişip onları değiştirdiğinizde, oyun içinde "hile" yapmış olursunuz.
2. Gereken Araçlar ve Kütüphaneler
Python ile hile yazmak için bazı temel araçlara ve kütüphanelere ihtiyacınız var. İşte bunlar:
Pymem: Bu kütüphane, bir işlemin bellek alanına erişmenizi sağlar. Yani, bir oyunun belleğindeki verileri okuyup değiştirebilirsiniz.
Cheat Engine: Bu araç, bir oyunun belleğindeki değerleri taramanıza ve bellek adreslerini bulmanıza yardımcı olur. Ancak, bu araç sadece kendi bilgisayarınızda ve kendi oyunlarınız üzerinde kullanılmalıdır.
Keyboard: Bu kütüphane, klavye tuşlarını dinlemenizi sağlar. Böylece hileleri belirli tuşlara basarak aktif edebilirsiniz.
Bu kütüphaneleri kurmak için terminale şu komutları yazabilirsiniz:
Pymem: Bu kütüphane, bir işlemin bellek alanına erişmenizi sağlar. Yani, bir oyunun belleğindeki verileri okuyup değiştirebilirsiniz.
Cheat Engine: Bu araç, bir oyunun belleğindeki değerleri taramanıza ve bellek adreslerini bulmanıza yardımcı olur. Ancak, bu araç sadece kendi bilgisayarınızda ve kendi oyunlarınız üzerinde kullanılmalıdır.
Keyboard: Bu kütüphane, klavye tuşlarını dinlemenizi sağlar. Böylece hileleri belirli tuşlara basarak aktif edebilirsiniz.
Bu kütüphaneleri kurmak için terminale şu komutları yazabilirsiniz:
Bash:
pip install pymem
pip install keyboard
3. İşlem ID'sini Bulmak
Hile yapacağınız oyunun işlem ID'sini bulmanız gerekiyor. Bu, oyunun bellek alanına erişmek için ilk adım. Bunun için pymem kütüphanesini kullanabilirsiniz. Örneğin:
Python:
import pymem
def get_process_id(process_name):
try:
pm = pymem.Pymem(process_name)
return pm.process_id
except pymem.exception.ProcessNotFound:
print(f"{process_name} process not found!")
return None
# Örnek kullanım
if __name__ == "__main__":
process_name = "notepad.exe" # Örnek olarak Notepad'i kullanalım
process_id = get_process_id(process_name)
if process_id:
print(f"{process_name} process ID: {process_id}")
Bu fonksiyon, belirttiğiniz oyunun işlem ID'sini döner. Eğer oyun çalışmıyorsa veya bulunamazsa, hata mesajı verir.
4. Bellek Adreslerine Erişim
Oyunun bellek adreslerine erişmek için pointer chain (zincirleme işaretçi) kullanmanız gerekiyor. Bu, oyunun bellek yapısına bağlıdır. Örneğin, hız değerini değiştirmek için belirli bir adrese gitmeniz ve oradaki değeri değiştirmeniz gerekiyor. Bunun için şöyle bir fonksiyon yazabiliriz
Python:
import pymem
def read_pointer_chain(pm, base_address, offsets):
address = base_address
for offset in offsets:
address = pm.read_ulonglong(address) + offset
return address
# Örnek kullanım
if __name__ == "__main__":
process_name = "game.exe" # Oyunun exe dosyasının adı
pm = pymem.Pymem(process_name)
base_address = pm.base_address
# Örnek pointer chain (gerçek değerler değil!)
offsets = [0x10, 0x20, 0x30]
final_address = read_pointer_chain(pm, base_address, offsets)
# Bellekten değer okuma
health_value = pm.read_float(final_address)
print(f"Health value: {health_value}")
# Bellekte değer değiştirme
pm.write_float(final_address, 100.0)
print("Health value set to 100.0")
- Offsetler ve Base Address: Bu değerler, her oyun veya uygulama için farklıdır. Bu değerleri bulmak için Cheat Engine gibi araçlar kullanabilirsin.
- Bellek Okuma/Yazma İzinleri: Bazı işlemlere erişmek için yönetici olarak çalıştırman gerekebilir.
- Anti-Cheat Sistemleri: Modern oyunlar, bellek okuma/yazma işlemlerini tespit edebilir. Bu yüzden dikkatli olmalısın.
Bu fonksiyon, bellek adresini zincirleme bir şekilde takip eder ve sonunda istediğiniz değere ulaşır.
5. Hile Fonksiyonları
Artık bellek adreslerine erişebildiğinize göre, hile fonksiyonlarını yazabilirsiniz. Örneğin, hız hilesi yapmak için şöyle bir fonksiyon yazabilirsiniz:
Python:
def speed_hack(pm, base_address, speed_value):
# OFFSET
base_offset = 0x12345678
speed_offsets = [0x10, 0x20, 0x30]
final_address = read_pointer_chain(pm, base_address + base_offset, speed_offsets)
pm.write_float(final_address, speed_value)
print(f"Speed hack applied: {speed_value}")
Bu fonksiyon, belirli bir bellek adresine gidip oradaki hız değerini değiştiriyor.
Hileleri klavye tuşları ile aktif etmek için keyboard kütüphanesini kullanabilirsiniz. Örneğin, 'R' tuşuna basınca hız hilesini aktif edebilirsiniz:
Hileleri klavye tuşları ile aktif etmek için keyboard kütüphanesini kullanabilirsiniz. Örneğin, 'R' tuşuna basınca hız hilesini aktif edebilirsiniz:
Python:
import keyboard
while True:
if keyboard.is_pressed('R'):
speed_hack(pm, base_address, speed_value)
Yazdığımız speed hilesi çalışıyor mu, bakalım.
Bu bilgiler, programlama ve bellek yönetimi gibi teknik konuları öğrenmek isteyenler için değerli bir kaynak olabilir. Ancak, bu bilgilerin sadece eğitim amaçlı kullanılması ve kötüye kullanılmaması çok önemlidir. Online oyunlarda hile yapmak, sadece diğer oyuncuların deneyimini bozmakla kalmaz, aynı zamanda hesabınızın banlanmasına ve hatta yasal sonuçlara yol açabilir.
Eğer ilgi görürse, bir sonraki konuda Tkinter kullanarak nasıl şık ve işlevsel bir menü oluşturabileceğinizi göstereceğim.
pso
This is "pso" by twiez on Vimeo, the home for high quality videos and the people who love them.
vimeo.com
Bu bilgiler, programlama ve bellek yönetimi gibi teknik konuları öğrenmek isteyenler için değerli bir kaynak olabilir. Ancak, bu bilgilerin sadece eğitim amaçlı kullanılması ve kötüye kullanılmaması çok önemlidir. Online oyunlarda hile yapmak, sadece diğer oyuncuların deneyimini bozmakla kalmaz, aynı zamanda hesabınızın banlanmasına ve hatta yasal sonuçlara yol açabilir.
Eğer ilgi görürse, bir sonraki konuda Tkinter kullanarak nasıl şık ve işlevsel bir menü oluşturabileceğinizi göstereceğim.





