/geliştir: Anti Hile Çekirdek Sürücüsü

Riot'un yeni oyunlarından bazılarını yeni hile karşıtı sistemlerle koruyoruz.

Bilgilendirme: Bu yazımız epey teknik ve League of Legends dışında kullanılan anti hile araçlarını da içeriyor. Diğer oyunlar (Proje A gibi), bahsedilen güncellemeyle LoL'den daha önce korunacak.

Yaklaşık olarak 8 yıl süren ve 20 milyon dolarlık bir fonun ayrıldığı araştırma sonucunda, bilim adamları hile yapmanın milattan önce 3,5 milyar ve milattan sonra 20 Kasım 1985 arasındaki bir tarihte keşfedildiğini belirledi. Tam olarak ne zaman ortaya çıktığı kesinleştirilemese de herkes tarafından kabul edilen bir gerçek var: Hilebazlar, eninde sonunda hile yapar.

Son yirmi yıldır hile geliştirme ve hilelerin önüne geçme teknolojisi, oyun istemcisini kontrol etmeye çalışmaktan hilecinin kendi makinesinin işletim sistemini, hatta doğrudan donanımını değiştirmeye kadar ilerledi. Maalesef bu teknikler, anti hile sistemlerinin doğru verileri toplamasını engelleyebiliyor. Eğer söz konusu anti hile sistemi kullanıcı modunda çalışmak zorundaysa sonuç çok daha kötü oluyor.

Peki kullanıcı modu nedir?

Bu, bir işletim sistemindeki ayrıcalık seviyelerinden biridir. Kısacası bir yazılımın çalışabileceği en kısıtlı aşamadır. İnternet tarayıcınız, orijinal WinRAR kopyanız ve en sevdiğiniz tüm oyunlar kullanıcı modunda çalışır. Kullanıcı modunda çalışan bir uygulama, kendisinden başka bir şey göremez ve kodu, kendi işlemi dışındaki verileri okumak veya yazmak için genellikle işletim sisteminin yerel API'lerinden faydalanmak zorundadır. Bunu bir benzetmeyle açıklamak gerekirse: Biz (kullanıcı modunda), yemeğimizin (League of Legends) içindeki sebzelerin organik olup olmadığını öğrenmek istiyorsak şefe (Microsoft Windows) sormamız gerekir.

For_Loc_Kernel_Drivers_TR.jpg

Eğer bir teknoloji dehasının, "Ha ha, hilem halka 0'da yer alıyor ve asla fark edilmiyor," dediğini duyarsanız bu, hesabı uzaklaştırılmadan önce söyleyeceği son sözler olacaktır.


Hile geliştiricileri, son birkaç yıldır kendi uygulamalarını (veya bunların bir kısmını) çekirdek seviyesinde çalıştırabilmek için güvenlik açıklarından veya bozulmuş Windows giriş doğrulama verilerinden faydalanıyor. İşte asıl sorun da burada başlıyor. Çekirdek modunda çalıştırılan kodlar, bizim kendi verilerimizi toplamak için kullandığımız sisteme müdahale ederek sonuçları herhangi bir hile kullanılmıyormuş gibi değiştirebilir ve bunları tespit etmemizi zorlaştırabilir. Hatta geçmişte sistem belleğini okumak ve işlemek için DMA'den1 faydalanan özel bir donanımla bile karşılaştık. Bu yöntem hatasız bir şekilde kullanıldığında kullanıcı modundan2 tespit edilemez.

Çoğu oyuncu bozulmuş Windows kurulum dosyaları istemez. Ancak hile kullanan pek çok kişi, sadece daha rahat vurkaç yapabilmek uğruna sistemini bir botnete teslim etmeye de can atar. Yani şu anda bir sürü hile, bizim anti hile sistemimizin kullandığı ayrıcalık seviyesinden daha yüksek bir seviyede çalışıyor. Bunu, az önce yaptığımız restoran benzetmesine uyarlayacak olursak: Yemeğimizin içindeki sebzelerin organik olup olmadığını şefe sormak istediğimizde, garsonlardan biri restoran yönetimine, “Ben ilgilenirim,” diyor ve şefle iletişime geçmeden sorumuza, “Tabii ki efendim, afiyet olsun,” diye cevap veriyor.

1 DMA, "Doğrudan Bellek Erişimi'nin kısaltması. Bir donanımın Windows API olmadan belleğe erişebilmesine deniyor. Daha gelişmiş hile yapma topluluklarından bazıları, belleğin sonradan işlenmesi ve ESP'si için farklı bir bilgisayara aktarmak adına bu yöntemi kullanıyor

2 Bunu tespit edebilmek için, yönetimin kendisini geliştiren adamı doğrudan işe aldık.

Peki bunları bana neden anlatıyorsunuz?

Eskiden en sevdiğiniz Anti Hile Ekibi, bu oyunu kullanıcı seviyesinde oynamak zorunda kalıyordu. Böylece hilebazların işi çok daha kolaylaşıyordu. Bunun ana sebebi düzenli olarak maaş almamız ve sabit uyku saatlerimiz olmamasıydı. Hile yapan oyuncularla doğrudan başa çıkabiliyorduk. Hiç durmadan büyüyen bir uygulama güvenliği savaşında genç beyinlerin karşısına dikilme fikri hoşumuza gitse de artık çok oyunlu bir dünyaya adım atmış bulunuyoruz. Yani zamanın kısıtlılığı ve uyku eksiklikleri bu stratejiyi sürdürülemez kılıyor.

İşte bu yüzden Riot'un çıkaracağı yeni oyunlardan bazıları, bir çekirdek sürücüsü tarafından korunacak.

Telaşlanmalı mıyım?

Telaşlanmamanız için geçerli birkaç sebep

  1. Stres saçlarınızın dökülmesine yol açar ve kafanızın üşümesini istemiyoruz.
  2. Bu yöntem, bize zaten sahip olmadığımız bir gözetim kabiliyeti sunmuyor. Eğer babaannenizin gizli yaprak sarma tarifini merak etseydik, bunu sadece kullanıcı modundan bulabilir ve bunu meşhur bir restoran zincirine satabilirdik. Bu güncellemenin amacı, sistem durumunu tutarlılık açısından takip etmek (böylece verilerimize güvenebiliriz) ve hile yapan kişilerin oyunlarımızı kurcalamasını zorlaştırmak (böylece kişisel başarısızlığınız için aimbot'ları suçlayamazsınız).
  3. Bu yeni bir şey değil, EasyAntiCheat, Battleye ve Xigncode3 gibi anti hile sistemleri, en sevdiğiniz AAA oyunları korumak için zaten çekirdek sürücülerinden faydalanıyor. Biz de Windows'a kendi adamımızı yerleştiriyoruz. Böylece Windows'u sorguya çektiğimizde doğru cevabı aldığımızdan emin olabileceğiz.
  4. Tespit edilemeyen hileler geliştirmek daha zor olacak. Böylece sizi aimbot'lardan, kendimizi Reddit'ten, hilekârlarıysa kendilerinden daha iyi koruyabileceğiz. 

    Anti hile sisteminin, çevrimiçi çok oyunculu bir oyunun en önemli parçalarından biri olduğunu biliyoruz ve hepinizin rakiplerinizin becerilerinden şüphe duymayacağı bir ortamda mücadele edebilmesini istiyoruz. Hile yapma arzusuna dur demenin bir yolu yok; ancak mümkün olan en iyi rekabet deneyimini size sunabilmek için var gücümüzle çalışmaya devam edeceğiz.

    Yazımız burada sona eriyor. Ödüllü kısa hikâyemiz, “Hilecileri LoL’den Uzaklaştırmak”ın devamı olan, ARAM'daki botlarla ilgili yazımızla yakında tekrar karşınızda olacağız.