/dev/null: Kernel-Treiber gegen Cheater

Wir greifen auf neue Anti-Cheat-Systeme zurück, um einige der zukünftigen Spiele von Riot zu schützen.

Achtung: Dieser Beitrag ist sehr technisch und dreht sich um Anti-Cheat-Systeme, die nicht nur bei League of Legends zur Anwendung kommen. Andere Spiele (wie Project A) werden noch vor LoL von dem genannten Upgrade geschützt.

In einer gemeinsamen Studie, die ungefähr 8 Jahre lang dauerte und 20 Millionen Dollar verschlang, fanden führende Wissenschaftler heraus, dass das Cheaten irgendwann zwischen 3,5 Milliarden Jahren vor unserer Zeitrechnung und dem 20. November 1985 erfunden wurde. Und obwohl sein genauer Ursprung nach wie vor ein Mysterium ist, gilt eines mittlerweile als erwiesen: Cheater werden immer cheaten.

In den letzten beiden Jahrzehnten hat sich die Entwicklung von Cheats und Technologien, die sie verhindern sollen, von ehrbaren Kämpfen um die Kontrolle über den Speicher eines Spiel-Clients zu schmutzigen Schlachten um das unterlagerte Betriebssystem der Rechner der Cheater (oder die Hardware selbst) weiterentwickelt. Diese Techniken können die Fähigkeit von Anti-Cheat-Systemen kompromittieren, gute Daten zu sammeln. Außerdem ist dieser Effekt sogar noch mehrschichtiger, wenn die Anti-Cheat-Systeme im Benutzermodus laufen.

Was ist der Benutzermodus?

Der Benutzermodus beschreibt eine privilegierte Stufe innerhalb eines Betriebssystems, bei dem es sich um die Ebene mit den meisten Einschränkungen handelt, auf der eine Software ausgeführt werden kann. Dein Web-Browser, deine legitime Version von WinRAR und deine Lieblingsspiele werden alle im Benutzermodus ausgeführt. Auf dieser Ebene können Anwendungen nicht direkt „sehen“, was außerhalb von ihnen geschieht. Stattdessen muss sich der Code auf die nativen Anwendungsprogrammierschnittstellen des Betriebssystems verlassen, um auf den Speicher außerhalb seines eigenen Prozesses zugreifen zu können. Oder anders gesagt: Wir (im Benutzermodus) müssen den Koch (Microsoft Windows) fragen, womit er unser Rindergulasch (League of Legends) verfeinert hat.

For_Loc_Kernel_Drivers-ger.jpg

Wenn dir jemals irgendein Genie die Worte „lol, mein cheat wurde in ring 0 nicht entdeckt“ schreibt, dann bezieht er sich hierauf – und wird anschließend sofort gesperrt.




In den letzten paar Jahren haben die Entwickler von Cheats damit begonnen, Schwachstellen auszunutzen oder die digitale Signatur von Windows zu korrumpieren, um ihre Anwendungen (oder Teile davon) auf der Kernel-Ebene ausführen zu können. Das Problem hierbei ist, dass Codes, die im Kernelmodus ausgeführt werden, die Systemaufrufe angreifen können, auf die wir uns beim Sammeln unserer Daten verlassen müssen. Dadurch können die Ergebnisse so modifiziert werden, dass sie legitim aussehen und für uns nur schwer als nicht legitim identifiziert werden können. Wir haben sogar schon spezielle Hardware gesehen, die den Speicherdirektzugriff1 nutzt, um auf den Systemspeicher zuzugreifen – was vom Benutzermodus aus nicht zu erkennen ist2, sofern der Prozess perfekt ausgeführt wird.

Während die meisten Spieler nicht auf die Idee kommen würden, ihre Windows-Version zu korrumpieren, gibt es doch eine erschreckend hohe Anzahl an Cheatern, die sofort bereit sind, einem Botnetz beizutreten, um ihre Freunde ein wenig beeindrucken zu können. Das bedeutet also, dass aktuell viele Cheats auf einer Ebene ausgeführt werden, die mehr Privilegien besitzt als die Ebene, auf der die Anti-Cheat-Systeme ausgeführt werden. Oder, um wieder auf unsere makellose Küchenanalogie zurückzukommen: Wenn wir den Küchenchef fragen, ob die Zutaten für unser Gulasch aus biologischem Anbau stammen, und plötzlich irgendein Typ daherkommt, die Restaurantleitung davon überzeugt, dass er unsere Frage beantworten darf, und uns dann versichert: „Sicher, hau rein, Alter.“

1Durch den Speicherdirektzugriff (DMA – „Direct Memory Access“) kann Hardware, wie du wahrscheinlich schon vermutet hast, direkt auf den Speicher zugreifen und muss dazu nicht die Anwendungsprogrammierschnittstellen von Windows nutzen. Einige der ausgewachseneren Cheat-Communitys haben dieses Verfahren benutzt , um den Speicher auf einen anderen Computer zu übertagen und ihn dort später zu verarbeiten.

2Wir haben den Typen, der eine Technik entwickelt hat, das Ganze trotzdem zu erkennen, natürlich sofort bei uns eingestellt.

Warum erzählt ihr mir das?

Nun, in der Vergangenheit war dein liebstes Anti-Cheat-Team dazu gezwungen, dieses Spiel sozusagen mit einem Arm auf den Rücken gebunden zu spielen. Bisher haben wir den zweiten Arm auch noch nicht gebraucht, da wir für unsere Arbeit regelmäßig bezahlt werden und uns nicht an geregelte Schlafenszeiten halten müssen. Doch so sehr uns der Gedanke an einen ständig eskalierenden Krieg mit Teenagern auch gefällt, wagen wir uns jetzt in ein Universum mit mehreren Spielen vor, in dem der akute Mangel an Zeit und Schlaf diese Strategie unmöglich macht und wir ziemlich sicher beide Arme brauchen werden.

Aus diesem Grund werden einige zukünftige Spiele von Riot durch einen Kerneltreiber geschützt.

Ich glaub, ich dreh gleich durch!

Es gibt mehrere Gründe dafür, dass du das nicht tun solltest.

  1. Stress kann zu starkem Haarausfall führen und ich will nicht, dass dein Kopf unterkühlt.
  2. Wir können dich durch diese neue Herangehensweise nicht stärker überwachen als bisher. Wenn wir uns für das Weihnachtsbratenrezept deiner Oma interessieren würden, könnten wir es auch vom Benutzermodus aus ausfindig machen und es an BonGusto verkaufen. Der Zweck dieses Upgrades besteht darin, den Zustand des Systems zu überwachen (damit wir unseren Daten auch wirklich vertrauen können) und Cheatern das Manipulieren unserer Spiele zu erschweren (damit du den Aimbots nicht mehr die Schuld für dein persönliches Versagen geben kannst).
  3. Und das ist nicht einmal etwas Neues. Mehrere Anti-Cheat-Systeme von Drittanbietern (wie EasyAntiCheat, Battleye und Xigncode3) benutzen jetzt schon Kerneltreiber, um AAA-Spiele zu schützen. Wir schicken einfach unseren eigenen Sous-Chef in die Küche von Windows, damit wir sicherstellen können, dass wir eine ehrliche Antwort auf die Frage „Woher stammt das Fleisch “ erhalten.
  4. Es wird wesentlich schwieriger werden, unentdeckbare Cheats zu entwickeln: Das schützt dich vor Aimbots, uns vor Reddit und die Cheater vor sich selbst.

Unserer Meinung nach zählen die Anti-Cheat-Systeme zu den wichtigsten Bestandteilen von Online-Spielen und wir wollen, dass die Spieler nie wieder das Können ihrer Gegner in Frage stellen müssen. Für die Cheater-Krankheit gibt es keine Heilung, aber wir werden alles versuchen, um dir das bestmögliche Wettkampferlebnis zu bieten.

Das war’s fürs Erste, ich werde jedoch in knapp vier Megasekunden zurückkehren, um dir mehr über Bots in ARAMs zu erzählen (dabei handelt es sich um die Fortsetzung unseres preisgekrönten Artikels „Keine Macht den Cheatern “).