CS:GO, Half-Life 2 und Team Fortress 2: Rechner über Custom Maps infiziert
Der beliebte Wettkampf-Shooter CS:GO und andere Valve-Spiele weisen eine Sicherheitslücke auf, über die Angreifer Schadcode in Spielekarten einschleusen können. Spielt ein Opfer auf einer solchen Custom Map, kann der Angreifer dessen Rechner übernehmen.
![Counterstrike Go Hack](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/2/4/5/4/8/7/cs-go-a29c69eda68ea11c.jpeg)
CS:GO ist unter wettbewerblichen Shooter-Spielern äußerst beliebt
(Bild: Valve)
Spiele und deren Vetriebsplattformen, vor allem Steam, gelten unter Sicherheitsforschern seit längerer Zeit als gutes Beispiel für wichtige Endbenutzer-Software, die nur ungenügend abgesichert ist. Diesem Umstand wird normalerweise eher wenig Aufmerksamkeit in der Öffentlichkeit gewidmet, ab und an ändert ich das allerdings. Zum Beispiel hat die Entwicklungsfirma Valve im Juni Counter-Strike: Global Offensive (CS:GO) sowie vier weitere der eigenen Spiele, welche die Source-Engine verwenden, aktualisiert.
Risiko Custom Maps
Der Sicherheitsforscher Justin Taft hatte eine Lücke entdeckt, über die er Schadcode in Custom Maps einschleusen kann. Der Spiele-Client der Opfer lädt zusätzliche Assets herunter, wenn ein Spieler sich mit einem Server verbindet und einer Session beitritt, die eine solche Custom Map verwendet. Wird dann das Asset mit dem Schadcode in den Speicher geladen und aufgerufen, wird der Schadcode ausgeführt und der Angreifer hat die Kontrolle über das System.
Betroffen sind neben dem beliebten E-Sports-Shooter CS:GO auch Day of Defeat: Source, Half-Life Deathmatch: Source, Half-Life 2: Deathmatch, Team Fortress 2, Portal 2, und Left 4 Dead 2. Allerdings steckt die Lücke wohl auch noch in zahlreichen Community-Mods, deren Entwickler jetzt schnell reagiere müssen. Der Forscher hält die genauen Details der Lücke deswegen noch zurück.
Die Schwachstelle geht auf einen Bug im Source SDK 2013 zurück, die dadurch verschlimmert wird, dass der Steam-Client unter Windows die Speicherverwürfelung ASLR umgeht und sich so angreifbar macht. Mittels Return-Oriented Programming (ROP) gelang es dem Sicherheitsforscher dann, aus den Instructions der steamclient.dll einen Exploit zu fertigen und seinen Schadcode auszuführen.
Bei Headshot Malware
Die Custom-Map-Funktionen des Source SDK dienen dazu, eigene Assets wie Texturen, Geräusche oder Animationen in Spiele-Karten unterzubringen. Um einen besonders theatralischen Effekt zu erzielen, wählte Taft ein Ragdoll-Modell aus, um seine Schadcode einzuschleusen. Das führt dazu, dass der Rechner des Opfers übernommen wird, wenn dieses gerade im Spiel gestorben ist. Bei Headshot Malware, sozusagen. Ein echter Angreifer würde den Schadcode hingegen wohl eher in Assets unterbringen, die direkt beim Laden der Map im Speicher aufgerufen werden.
Taft warn davor, dass man mit einer Sicherheitslücke dieser Art Erpressungstrojaner verteilen oder Rechner in ein Botnetz einspannen könne. Da viele Anwender die Sicherheitsrisiken von Spielen und Spieleplattformen nicht auf dem Schirm haben, ist seine Einschätzung nicht ganz von der Hand zu weisen. Hinzu kommt, dass die Hintergrund-Dienste von Plattformen wie Steam auf Windows in der Regel weitgehende System-Rechte haben und zum Teil selbst Code in die ausführbaren Dateien der Spiele einschießen. Es lässt sich also oft nur mit Mühe feststellen, ob wirklich Schadcode zu Gange ist, oder alles funktioniert, wie es soll. In einem solchen Umfeld stellen Karten und Spiele-Assets, die automatisch von eventuell nicht vertrauenswürdigen Servern geladen werden, ein ernstzunehmendes Risiko dar. (fab)