Anti-Cheat Ekibinden Bilgilendirme Yazısı

Sevgili PUBG oyuncuları,

Geliştirdiğimiz hile önleme çözümleriyle ilgili olarak sizi bilgilendirmek için son birkaç aydır neler yaptığımızı hızlıca paylaşmak istedik. Hile önleme konusunda yoğun çalışmalar gerçekleştiriyoruz ve bu yazıda, sürece zarar vermemek adına çok fazla ayrıntıya girmeden, bu çalışmaların hangi noktada olduğundan ve nihai hedefimizden bahsetmek üzere birkaç kategorinin üzerinden geçeceğiz.

  • Teknik Önlemlerin Desteklenmesi
  • Hile Önleme Çözümlerin İyileştirilmesi
  • İzinsiz Program Tespitine Yönelik İyileştirmeler
  • Steam Sistemindeki Zayıf Noktaların Ele Alınması
  • Yasal Yaptırımların Artırılması

Teknik Önlemlerin Desteklenmesi

PUBG’nin çıkışından itibaren hile programları aracılığıyla farklı tiplerde saldırılar oldu ve etkinliği artırarak her türlü saldırıya yanıt vermek amacıyla her ne kadar gerekli adımları atmış ve çok sayıda güvenlik önlemi almış olsak da, bu durum bizim için daima sonu gelmeyen bir mücadele olacak. Öncelikle, bu hile programların genel anlamda nasıl işlediğinden ve bu işleyişe bağlı olarak geliştirdiğimiz teknik destek mekanizmasından bahsedelim.

  • Bir hile programı (.exe uzantılı) ve oyun (.exe uzantılı) açıldığında, ilgili veriler sistem RAM’ine eş zamanlı olarak yüklenir.
  • Oyun işleyişi veya bir 3. taraf hile önleme çözümü tarafından sağlanan varsayılan koruma etkin hale gelir.Bu, diğer işlemlerin oyunun işleyişine erişmesini engellemek için devreye giren ön koruma safhasıdır.
  • Hile programının işleme süreci, 2. maddede bahsedilen koruma teknolojisini etkisiz hale getirerek oyunun işlem hafızasına başarıyla erişim kazanmaktır.
      1. Hafızaya erişmek, oyunla ilgili bilgilerin değiştirilebileceği anlamına gelir.
      2. Bunun için kullanılan en meşhur hileler, DKOM, Process Hollowing ve SSDT hooking yönetimdir.
  • Oyunun işleyiş hafızasına erişim elde eden hile programı, çeşitli verileri toplayabilir, değiştirebilir veya oyunda yer almayan yasa dışı özellikleri etkinleştirmek için kopyalayabilir. Burada kullanılan en tipik yöntem, DLL enjeksiyonu ve Kod enjeksiyonudur.
      1. DLL enjeksiyonu: Belirli bir işlem içerisine DLL dosyasını enjekte eder. Windows’ta bulunan LoadLibrary() API’yi kullanır.
      2. Kod enjeksiyonu: Hedef işleme komut enjekte eder. Windows’ta bulunan CreateRemoteTread() işlevini kullanır.
  • Elde edilen bellek alanı, oyunda yer almayan özelikleri etkinleştirmek için herhangi bir kısıtlama olmaksızın okunabildiği gibi, üzerinde oynamalar yapılarak da tahrif edilebilir/değiştirilebilir

DLL enjeksiyonu, en eski ve en yaygın kullanılan korsanlık yöntemidir. DLL enjeksiyonu, oyunun işleyişine müdahale ederek belirli bir DLL dosyasını oyuna zorla yerleştirir. Saldırı başarılı olduğunda bu DLL kodu, orijinal oyun koduymuş gibi güvenilir kabul edilir. Bu sayede bilgisayar korsanı, bu DLL hooking yöntemini kullanıp verileri çalarak oyunun işleyişini istediği şekilde değiştirebilir.

DLL enjeksiyonu saldırılarını önlemek, hile önleme ekibi için her zaman yüksek öncelik bir amaç olmuştur. PUBG’nin ilk geliştirilme aşamalarında bazı uyumsuzluk sorunları da vardı; Steam ve Discord gibi programların DLL enjeksiyonu girişiminde bulunduğuna dair yanlış tespit yapılıyor veya yine hatalı olarak DLL dosyaları zararlı kodlar olarak tanımlanıyordu.

Karşılaştığımız bir diğer saldırı türü, çekirdek sürücüsü saldırıları oldu. Çekirdek sürücüsü, donanımla iletişimde bulunmak için gereken bir dosyadır ve belirli bir yetki dahilinde işletimle sağlanır. Çekirdek sürücüsü, çok sayıda hile önleme çözümünü atlayabileceğinden ve işletimi genel kullanıcı yetkisinden daha yüksek bir yetki gerektirdiğinden, bu sürücüde saldırıların tespit edilmesi çok daha zordur.

Ayrıca, Windows işletim sisteminin izinsiz çekirdek sürücüsünü sistem dahilinde engellemesine rağmen, izinsiz çekirdek sürücülerinin güvenlik ihlallerinden ve yaşa dışı satın alım belgelerinden istifade edilerek yasal çekirdek sürücüleri gibi satılmasına da sık rastlanmaktadır.

Yine DLL enjeksiyonlarını engellemek için kullandığımız yöntemi kullanarak bu tür saldırılardan korunabiliriz ancak Windows işletim sisteminde devamlı olarak yeni zayıf noktalar bulunduğundan, çoğu hile önleme çözümü zararlı kodların kullandıklarına benzer yöntemler kullandığından ve bu da söz konusu yöntemlerin hangi amaca hizmet ettiği konusunda karışıklık yarattığından, bu koruma çok da etkili olmayacaktır. Bu nedenle hile önleme ekibi, bilgisayar korsanlarının kötüye kullanabileceği bellek alanını çekirdek sürücüleri kullanan saldırılara etkili şekilde yanıt vermek için şifreleme yöntemi yardımıyla korumaya yüksek öncelik veriyor ve bu yöntemin uygulama kapsamını daha da genişletmek için elinden geleni yapıyor.

Örneğin, istemci ile sunucu arasındaki iletişim protokolünde şifreleme yaparak veya korsanlık programlarına karşı verdiğimiz mücadelede bir adım önde olabilmek için istemcide sonuç olarak alınan değeri yeniden onaylayarak çeşitli teknik yanıtlarımızı da güçlendiriyoruz.

Hile Önleme Çözümünün İyileştirilmesi

PUBG, oyunun işletim alanını korumak için yukarıda açıklanan teknik korumanın yanı sıra harici hile önleme çözümleri de kullanıyor. Önceden basın bültenleri gibi araçlarla duyurulduğu şekilde, şu an iki hile önleme çözümü kullanılıyoruz: BattlEye ve Uncheater. Bunlar, oyunun işletim alanını koruyor ve aynı zamanda hile önleme çözümünü atlatmak amacıyla gerçekleştirilen saldırı girişimlerini tespit ediyor.

Koruma amaçlı bu hile önleme çözümlerinin yanı sıra oyuncularımızın kullanım örüntüsünü analiz eden bir otomatik öğrenme tekniğini de uygulamaya aldık ve bilgisayar korsanlarının oyunun normal işlevlerine müdahalede bulunmak için kullandığı olağan dışı oyun örüntülerini veya eylemleri tespit edebilen bir sistem geliştirdik. Bu sistemleri geliştirirken, oyunumuzun güvenliğini güçlendirmemize yardımcı olan çok sayıda deneyimli hile önleme şirketi ve üst düzey mühendisle iş birliği içinde çalıştık.

Yeni saldırı tekniklerini incelemek ve bunlara karşı koruma sağlayacak teknolojiyi geliştirmek için birlikte çalıştığımız hile önleme şirketi sayısını artıracağız.

İzinsiz Program Tespitine Yönelik İyileştirmeler

Çeşitli koruma yöntemlerinden faydalanıyor olsak dahi izinsiz programların tümünü engellemek neredeyse imkansız. Mevcut durumda, çözümlerimize takılmadan ilerlemeye çalışan korsanlık programlarının oyun içinde kullanılıp kullanılmadığını tespit etmeye ve bunları anında engellemeye çalışıyoruz.

Hile önleme ekibi her gün ortalama olarak yaklaşık 3 TB’lık oyun günlüğünü, 60 civarı hile türü günlüğünü ve 10 milyonu aşkın raporu inceliyor. Bu veri deryasında normal örüntüsü dışında hareket eden kullanıcıları seçiyoruz ve doğrulama işleminin ardından bu tür hesapları engelliyoruz. Ayrıca önceden engellediğimiz programlarda tekrar çalıştırılmak üzere değişiklikler yapılmadığından emin olmak için izinsiz programların örüntüsünü düzenli olarak güncelliyoruz.

Tüm bunları yaparken de ilgili güncellemeleri kullanıcılarımızla paylaşma yöntemlerimizi iyileştirmeye çalışıyoruz. Bunlara örnek olarak, 23 Ağustos’ta yapılan güncellemede sunulan rapor geri bildirimi sistemini gösterebiliriz. Bu sistemin uygulanmasından bu yana, kullanıcılara 100 milyondan fazla rapor gönderildi. Tek bir oturumda birden çok rapor alan kullanıcıların %83’ü kalıcı olarak engellendi. Dolayısıyla raporların çok da önemli olmadığını düşünen varsa söyleyelim; raporlarınız, adil bir savaş alanı yaratmada büyük rol oynuyor.

Aşağıda, 23 Ağustos – 30 Kasım tarihleri arasında elde edilen haftalık rapor geri bildirimi verileri yer alıyor.

Donanım engellemeleri konusuna gelince, bunlara 19 Kasım’da başladık. Bu son derece hassas bir engelleme yöntemi olduğundan, internet kafelerin veya genel kullanımdaki bilgisayarların bu durumdan haksız yere etkilenmemesi için ilave tedbirler alıyoruz. Hangi makinelerin engelleneceğini seçerken, hileye karışmamış bilgisayarların etkilenmemesi için son derece dikkatli davranıyoruz. Donanım engellemesi gerçekleştiğinde, aşağıdaki ekran görüntüsünde yer alan mesaj açılacak ve donanımın o parçası artık PUBG oynamak için kullanılamayacak. Donanım engellemelerinin yanı sıra, macro mice kullananları da engellemeye başladık. Planımız, makro cihazlar kullanılarak elde edilen, adil olmayan üstünlüğün önüne geçmek için gösterdiğimiz çabanın tüm cihazları kapsaması yönünde.


<Hardware ban message(above) / Macro mouse ban message(below)>

Şu an bu korsanlık araçlarını satan yerleri (web siteleri, mesajlaşma programları, discord vb.) dünya genelinde 7/24 izleyen 100’den fazla kişi çalıştırıyoruz. Korsanlık programlarına ilişkin bilgi alışverişi yapan çeşitli topluluklar da yakından izleniyor ve böylece PUBG’nin güvenliği açısından tehlike oluşturan unsurlar tespit edilerek mümkün olan en kısa sürede ortadan kaldırılabiliyor.

Nihai hedefimiz, bu bilgisayar korsanlarını oyunda devre dışı bırakmak için onlardan önce harekete geçmek yönünde.

Kısa süre önce, aynı oturumda bulunan birinin engellenmesi halinde oyundaki oyunculara gerçek zamanlı olarak uyarılar gönderen bir sistem mesajı ekledik. Gerçek zamanlı olarak olağan dışı bir oyun oynama örüntüsü tespit edildiğinde veya bir kullanıcının oyun sırasında korsanlık girişiminde bulunduğu kanıtlandığında, söz konusu hesap oyun devam ederken engellenecek ve ölüm akışındaki diğer tüm oyunculara haber verilecek.

Steam Sistemindeki Zayıf Noktaların Ele Alınması

Oyun içinde uygulanan yöntemlerin yanı sıra harici platformlardaki zayıf noktaların iyileştirilmesine de yardımcı olduk. Bildiğiniz gibi PUBG, Steam platformunu kullanıyor. Yasa dışı kazanç sağlamak amacıyla platformdaki bazı zayıf noktalarından istifade edildiği oldu ve korsanlık programı kullananların normal prosedür gereğince ceza almaları için Steam ile birlikte bu zayıf noktaları ele alarak iyileştirdik. Aşağıda yaşanan durumlardan birkaç örneğe yer verdik.

  • Steam ve PUBG kısıtlamalarını atlatmak için Steam Aile Paylaşım sistemindeki zayıf bir noktayı kullanmak
    • PUBG’yi satın almış bir hesabın Aile Paylaşımını kullanarak, PUBG’yi satın almamış başka bir hesapla oyunu paylaşması halinde, oyunun paylaşıldığı hesap artık oyunu oynayamaz.
  • Steam’in asgari para iadesi gereksinimlerini karşılamak ve oyunu uzun süredir oynamasına rağmen, iade ederek oyunun ücretini geri almak, yani oyunu ücretsiz oynamak için Steam üzerinden oyunun oynanma süresini değiştirmek
    • Bu durumun tekrar yaşanmaması için Valve (Steam) ile birlikte çalışarak PUBG oynama süresi hesaplama yöntemini ve Steam kullanıcı yazılımı para iadesi gereksinimlerini güçlendirdik.
  • Steam platformunun yapısından ötürü Beta ve Test Sunucularının ayrı ortamlarda bulunduğu varsayımından istifade ederek Test Sunucusuna erişim sağlamak ve korsanlık araçları kullanmak için Açık Sunucuda engellenmiş bir hesabı kullanmak
    • Sistemi değiştirerek engelleme kayıtlarının artık tüm sunucularda kontrol edilebilmesini sağladık. Engelleme kayıtları artık Açık Sunucuda, Test Sunucusunda ve diğer sunucularda paylaşılıyor ve böylece bir sunucuda engellenen bir oyuncu diğer sunucuları da kullanamıyor.

Sistemin zayıf noktalarından istifade edilmesine karşı Steam ile yakın iş birliği içinde çalışarak sistemi sürekli iyileştiriyoruz.

Yasal Yaptırımların Arttırılması

Adil bir oyun ortamına engel olan korsanlık programlarının engellenmesi önemlidir ancak bu korsanlık programlarını geliştirenlerin, destekleyenlerin ve satanların da her zaman ana hedef olarak görülmesi gerekir. Korsanlık programlarının yaygınlaşmasını önlemek için hem kendi ülkemizde hem de yurt dışında ciddi hukuki yaptırımlar uygulamak için emniyet yetkilileri ve yurt dışındaki kurumlarla birlikte çalışıyoruz. Aşağıda, 2018 yılında Tencent ile yakın iş birliği içinde CN bölgesinde yürütülen yasal yaptırımların sonuçları yer alıyor.

  • Ocak 2018’de Çin’in Lianyungang şehrinde 41 kişi tutuklandı
  • Şubat 2018’de Çin’in Huai’an şehrinde 3 kişi tutuklandı
  • Şubat 2018’de Çin’in Xiangyang şehrinde 11 kişi tutuklandı
  • Nisan 2018’de Çin’in Nanjing şehrinde 141 kişi tutuklandı
  • Nisan 2018’de Çin’in Huai’an şehrinde 1 kişi tutuklandı
  • Ağustos 2018’de Kore’de Daejeon Metropolis Polis Teşkilatı tarafından 6 kişi tutuklandı
  • Eylül 2018’de Çin’in Wenzhou şehrinde 1 kişi tutuklandı
  • Ekim 2018’de Çin’in Tangshan şehrinde 3 kişi tutuklandı
  • Ekim 2018’de Çin’in Wenzhou şehrinde 34 kişi tutuklandı
  • Ekim 2018’de Kore’de Yangcheon Emniyeti tarafından 11 kişi tutuklandı

Yukarıda yer alan sonuçlara ek olarak, bizzat korsanlık programı geliştirenlerin izini sürmenin yanı sıra Kore Ulusal Polis Teşkilatı, hukuk büroları ve telif hakkı koruma kuruluşlarıyla birlikte korsanlık programı satışlarını da araştırıyoruz. Yeni araştırma sonuçları elde ettiğimizde sizi de bilgilendireceğiz.

Son olarak;

PUBG’nin her oyununda, sayıları 100’e varan oyuncu, halihazırda imkansız görünen zorluklarını aşmaya çalışıyor. Bir kişinin bile oyunu adil şekilde oynamamasının çok sayıda kişinin aldığı keyfi ciddi anlamda zedeleyebileceğinin farkındayız ve bu nedenle, diğer oyunlara kıyasla çok daha yüksek bir güvenlik seviyesi sağlamamız gerekiyor.

Kendimizi bu göreve adamaya devam edeceğiz ve bugün paylaştıklarımız bu savaşta attığımız ilk adımlar olsa da, mümkün olduğunca çok korsanlık programını ve bunları geliştirenleri saf dışı bırakmak için araştırma yaparak yeni hile önleme teknolojileri geliştirmekten asla vazgeçmeyeceğiz.

Hepinize sabrınız ve güveninizden ötürü minnettarız ve bu güvenin karşılıksız kalmaması için elimizden geleni yapacağız. Hiç kesilmeyen desteğiniz ve bildirimleriniz için teşekkür ederiz.

—PUBG Anti-Cheat Takımı

Makaleyi Yorumla
Makaleyi Ara