Cheat Engine

Sıfırdan kahraman olmak için AWS hackleme htARTE (HackTricks AWS Kırmızı Takım Uzmanı) ile öğrenin!

HackTricks'ı desteklemenin diğer yolları:

Hile Motoru, çalışan bir oyunun belleğinde önemli değerlerin nerede saklandığını bulmanıza ve değiştirmenize olanak tanıyan faydalı bir programdır. İndirip çalıştırdığınızda, aracı nasıl kullanacağınıza dair bir eğitimle karşılaşırsınız. Aracı nasıl kullanacağınızı öğrenmek istiyorsanız, eğitimi tamamlamanız şiddetle tavsiye edilir.

Ne arıyorsunuz?

Bu araç, bir programın belleğinde bazı değerlerin (genellikle bir sayı) nerede saklandığını bulmak için çok faydalıdır. Genellikle sayılar, 4 bayt formunda saklanır, ancak bunları double veya float formatlarında da bulabilir veya bir sayıdan farklı bir şey aramak isteyebilirsiniz. Bu nedenle, aramak istediğiniz şeyi seçtiğinizden emin olmanız gerekir:

Ayrıca farklı türlerde aramaları belirtebilirsiniz:

Ayrıca, belleği tararken oyunu durdurmak için kutuyu işaretleyebilirsiniz:

Kısayol Tuşları

Düzenle --> Ayarlar --> Kısayol Tuşları bölümünde, oyunu durdurmak gibi farklı amaçlar için farklı kısayol tuşları ayarlayabilirsiniz (bunu yapmak, belleği taramak istediğiniz bir noktada oldukça faydalıdır). Diğer seçenekler de mevcuttur:

Değeri Değiştirme

Bir kez aramakta olduğunuz değeri nerede bulduysanız (bu konuyla ilgili daha fazlası aşağıdaki adımlarda), değeri çift tıklayarak değiştirebilir, ardından değerine çift tıklayarak değiştirebilirsiniz:

Ve son olarak, değişikliğin bellekte yapılması için işareti işaretleyin:

Bellekteki değişiklik hemen uygulanacaktır (oyun bu değeri tekrar kullanana kadar değer oyunda güncellenmeyecektir).

Değeri Arama

Öyleyse, kullanıcınızın hayatı gibi önemli bir değeri iyileştirmek istediğinizi ve bu değeri bellekte aradığınızı varsayalım)

Bilinen bir değişiklik aracılığıyla

Değerin 100 olduğunu arıyorsanız, bu değeri aramak için bir tarama yaparsınız ve birçok eşleşme bulursunuz:

Sonra, değerin değiştiği bir şey yaparsınız, oyunu durdurursunuz ve bir sonraki taramayı yaparsınız:

Cheat Engine, 100'den yeni değere geçen değerleri arayacaktır. Tebrikler, aradığınız değerin adresini buldunuz, şimdi onu değiştirebilirsiniz. Eğer hala birkaç değerin varsa, o değeri tekrar değiştirmek için bir şey yapın ve adresleri filtrelemek için başka bir "sonraki tarama" yapın.

Bilinmeyen Değer, bilinen değişiklik

Değeri bilmiyorsanız ancak nasıl değişeceğini biliyorsanız (ve hatta değişikliğin değerini biliyorsanız), sayınızı arayabilirsiniz.

Bu nedenle, "Bilinmeyen başlangıç değeri" türünde bir tarama yaparak başlayın:

Sonra, değeri değiştirin, değerin nasıl değiştiğini belirtin (benim durumumda 1 azaldı) ve bir sonraki taramayı yapın:

Seçilen şekilde değiştirilen tüm değerlerle karşılaşacaksınız:

Değerinizi bulduktan sonra onu değiştirebilirsiniz.

Unutulmamalıdır ki çok sayıda olası değişiklik vardır ve sonuçları filtrelemek için bu adımları istediğiniz kadar yapabilirsiniz:

Rastgele Bellek Adresi - Kodu Bulma

Bir değeri depolayan bir adresi bulmayı öğrendik, ancak oyunun farklı yürütümlerinde bu adresin belleğin farklı yerlerinde olma olasılığı oldukça yüksektir. Bu adresi her zaman bulmanın yolunu öğrenelim.

Bahsedilen hilelerden bazılarını kullanarak, mevcut oyununuzun önemli değeri depoladığı adresi bulun. Ardından (oyunu durdurarak isterseniz) bulunan adrese sağ tıklayın ve "Bu adresi kimin eriştiğini bul" veya "Bu adrese yazanı bul" seçeneğini seçin":

İlk seçenek, bu adresi kullanan kod parçalarını bilmek için yararlıdır (bu, oyunun kodunu nasıl değiştirebileceğinizi bilmek gibi daha fazla şey için faydalıdır). İkinci seçenek daha belirgin ve bu durumda daha yardımcı olacaktır çünkü bu değerin nereden yazıldığını bilmek istiyoruz.

Bu seçeneklerden birini seçtikten sonra, hata ayıklayıcı programı programa bağlanacak ve yeni bir boş pencere görünecektir. Şimdi, oyunu oynayın ve değeri değiştirin (oyunu yeniden başlatmadan). Pencere, değeri değiştiren adreslerle dolmalıdır:

Değeri değiştiren adresi bulduğunuzda, kodu istediğiniz gibi değiştirebilirsiniz (Cheat Engine, bunu hızlıca NOP'larla değiştirmenize izin verir):

Artık kodu, sayınızı etkilemeyecek şekilde değiştirebilir veya her zaman olumlu bir şekilde etkileyecek şekilde değiştirebilirsiniz.

Rastgele Bellek Adresi - İşaretçiyi Bulma

Önceki adımları takip ederek, ilgilendiğiniz değerin nerede olduğunu bulun. Ardından, "Bu adrese yazan şeyleri bulun" kullanarak bu değeri yazan adresi bulun ve üzerine çift tıklayarak açıklama görünümünü alın:

Daha sonra, yeni bir tarama yapın, "[]" arasındaki onaltılık değeri arayın (bu durumda $edx değeri):

(Çoğu zaman en küçük adres olanı gerekecektir) Şimdi, ilgilendiğimiz değeri değiştirecek olan işaretçiyi bulduk.

"Adresi El ile Ekle" üzerine tıklayın:

Şimdi, "İşaretçi" onay kutusuna tıklayın ve bulunan adresi metin kutusuna ekleyin (bu senaryoda, önceki görüntüde bulunan adres "Tutorial-i386.exe"+2426B0 idi):

(İlk "Adres" kutusunun, tanıttığınız işaretçi adresinden otomatik olarak dolduğuna dikkat edin)

Tamam'a tıklayın ve yeni bir işaretçi oluşturulacaktır:

Artık, o değeri her değiştirdiğinizde, bellek adresinin farklı olduğu önemli değeri değiştiriyorsunuz.

Kod Enjeksiyonu

Kod enjeksiyonu, bir parça kodu hedef sürece enjekte ettiğiniz ve ardından kodun yürütülmesini kendi yazdığınız kod üzerinden yönlendirdiğiniz bir tekniktir (örneğin, puanları dinlenmek yerine size verir).

Örneğin, oyuncunuzun yaşamını 1 azaltan adresi bulduğunuzu varsayalım:

Disassembler'ı görmek için Tıklayın. Daha sonra, Auto assemble penceresini çağırmak için CTRL+a tuşlarına basın ve Template --> Kod Enjeksiyonu seçeneğini seçin

Değiştirmek istediğiniz talimatın adresini doldurun (bu genellikle otomatik olarak doldurulur):

Bir şablon oluşturulacaktır:

Yeni montaj kodunuzu "newmem" bölümüne ekleyin ve orijinal kodu "originalcode" bölümünden kaldırın, eğer yürütülmesini istemiyorsanız. Bu örnekte, enjekte edilen kod, 1 çıkarmak yerine 2 puan ekleyecektir:

Yürüt düğmesine tıklayın ve devam edin, kodunuz programda enjekte edilerek işlevin davranışını değiştirmelidir!

Referanslar

  • Cheat Engine öğretici, Cheat Engine ile başlamanın nasıl yapılacağını öğrenmek için tamamlayın

Last updated