AMD Ryzen: Fehlerbehaftetes Spiele-Tuning im PCI-Treiber versteckt

20
News Norman Wittkopf Als bevorzugte Quelle auf Google hinzufügen
AMD Ryzen: Fehlerbehaftetes Spiele-Tuning im PCI-Treiber versteckt
Quelle: PC Games Hardware

Für bestimmte Ryzen-CPUs und Spiele hat AMD laut einem Sicherheitsforscher ungewöhnliche und schlecht umgesetzte Maßnahmen im hauseigenen PCI-Treiber ergriffen.

Eigentlich sollte ein PCI-Treiber in erster Linie die einwandfreie Kommunikation zwischen dem Chipsatz des Prozessors und angeschlossenen Peripheriegeräten sicherstellen, doch bei näherer Betrachtung macht AMDs Variante laut den kürzlich gemachten Entdeckungen des Sicherheitsforschers Alex Ionescu deutlich mehr: So werden auf bestimmten Ryzen-CPUs gewisse Funktionen zur Performance-Verbesserung in ausgewählten Spielen aktiviert, die eigentlich aufgrund bekannter CPU-Fehler mit Absturzgefahr von BIOS-Herstellern deaktiviert sein sollten. Die schlechte Umsetzung des Ganzen sei zudem sicherheitsrelevant.

Versteckte und schlechte Umsetzung mit Absturzpotenzial

Im dazugehörigen Thread auf Twitter hat Ionescu seine Entdeckungen näher dargelegt: Der "AMD PCI Driver" verändert demnach unter anderem abhängig vom Namen des ausgeführten Prozesses bestimmte Werte in MSRs (Model-Specific Registers) der CPU, wobei weder dieses Vorgehen noch die eigentliche Funktion der Register dokumentiert sind. Der Treiber biete darüber hinaus keinen genügenden Schutz vor der Übernahme der Funktionen, was es auch ermöglicht habe, das genutzte Ryzen-System mit einer einzigen Zeile Powershell-Code zum Absturz zu bringen.

Die nur als Hashwerte im Treiber hinterlegten Prozessnamen konnten dabei offenbar ausschließlich 18 Spielen zugeordnet werden. Bei diesen schaltet der Treiber den sogenannten Op-Cache der Prozessoren an oder deaktiviert ihn auf Ryzen-1000-CPUs (Zen 1), während bei Ryzen-3000-CPUs (Zen 2) bestimmte Funktionen des L2- und L1-Cache aktiviert werden. Die Hashfunktion soll dabei so ungenügend umgesetzt sei, dass bereits Kollisionen mit anderen Prozessnamen ausgemacht werden konnten, die nichts mit den Spielen zu tun haben.

"Diese Prozessoren hatten bekannte Fehler, die manchmal zu Abstürzen führen konnten, und die Empfehlung für BIOS-Hersteller lautete, diese Funktionen zu deaktivieren. Wenn Sie diese Spiele spielen, aktiviert der Treiber die Funktionen erneut, während das Spiel aktiv ist." - Alex Ionescu

Performance-Verbesserung in bestimmten Spielen

Zu den bisher identifizierten Spielen gehören Factorio, Destiny 2, H1Z1, Jurassic World Evolution, Rainbow Six, Fallout 76, League of Legends, Battlefield 5, Warframe, Apex Legends, Doom Eternal, Call of Duty: Modern Warfare, Overwatch und Anthem. AMDs beschriebene Treibermaßnahmen führen in den besagten Spielen im Idealfall zu Geschwindigkeitsverbesserungen (in unbekanntem Ausmaß), können aber eben auch Abstürze verursachen. Das alles und der verschleiernde Charakter sollten laut Ionescu nicht akzeptabel sein und AMD entsprechend mit Transparenz aufwarten, während es gar keine WHQL-Zertifizierung als PnP-PCI-Treiber hätte geben dürfen. Eine Stellungnahme von AMD steht derweil bisher noch aus.

Empfohlener redaktioneller Inhalt [EMBED_URL] An dieser Stelle finden Sie externe Inhalte von [PLATTFORM]. Zum Schutz Ihrer persönlichen Daten werden externe Einbindungen erst angezeigt, wenn Sie dies durch Klick auf "Alle externen Inhalte laden" bestätigen: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt. Mehr dazu in unserer Datenschutzerklärung.
Externe Inhalte Mehr dazu in unserer Datenschutzerklärung.

Quelle: via golem.de

20
    • Kommentare (20)

      Zur Diskussion im Forum
      • Von Khabarak Volt-Modder(in)
        Oder die Vorsichtsmaßnahmen werden eben deaktiviert - sprich dieinaktiven Teile der CPU sind wegen der neueren Angriffe auf Cache und Co. deaktiviert.
        Da aber nicht jede Sicherheitsmaßnahme grundsätzlich zu mehr Stabilität bei allen Programmen führt, kann es sein, dass der Cache (und damit eventuelle Verwundbarkeiten) für die Spiele wieder aktiviert werden, weil diese Spiele drauf angewiesen sind.

        Aber da hier die Datenlage mal wieder extrem dünn ist, sollte der Verfasser der Tweets erst mal den Ball deutlich flacher halten und für bessere Datenlage sorgen - siehe Video von David Kriesel.
      • Von Khabarak Volt-Modder(in)
        Oder die Vorsichtsmaßnahmen werden eben deaktiviert - sprich dieinaktiven Teile der CPU sind wegen der neueren Angriffe auf Cache und Co. deaktiviert.
        Da aber nicht jede Sicherheitsmaßnahme grundsätzlich zu mehr Stabilität bei allen Programmen führt, kann es sein, dass der Cache (und damit eventuelle Verwundbarkeiten) für die Spiele wieder aktiviert werden, weil diese Spiele drauf angewiesen sind.

        Aber da hier die Datenlage mal wieder extrem dünn ist, sollte der Verfasser der Tweets erst mal den Ball deutlich flacher halten und für bessere Datenlage sorgen - siehe Video von David Kriesel.
      • Von PCGH_Torsten Kokü-Junkie (m/w)
        Das setzen scheint die Stabilität zu steigern, naheliegend ist also dass irgendwelche Vorsichtsmaßnahmen in der CPU aktiviert werden, die bei diesen Spielen für stabilen Betrieb nötig sind. Was genau da abläuft und ob über die Forcierung eines Absturzes mittels unpassender Werte hinaus weitere Gefahren drohen, wenn ein Angreifer die Register manipuliert, ist mangels Dokumentation noch unklar.
      • Von Khabarak Volt-Modder(in)
        Zitat von PCGH_Torsten
        Update:
        laut neuerem Post ist die Wirkung genau umgekeht: Bei 19 Spielen setzt der Treiber ein Bit, dass die Stabilität erhöht. Stellt aber natürlich trotzdem einen Trick da, wenn man es in allen anderen Fällen inaktiv lässt – eigentlich ist es sogar noch zweifelhafter, dass eine Zustand, der Abstürze verursachen kann, als Standard verwendet und nur in Einzelfällen gemäß Blacklist verlassen wird. Die Sicherheitslücke scheint darin zu bestehen, dass jeder Prozess die Treiberfunktion zur Manipulation dieser Bits ansteuern kann. Die eigentlich Aktion braucht also Treiber-Privilegien, aber das entsprechende Werkzeug ist ungeschützt zugänglich.
        Die große Frage ist eher: warum bleibt das bit bei den meisten Spielen auf 0?
        Reduziert das Aktivieren die Stabilität?
        Kommen die Spiele damit nicht klar?
        Ist es mal wieder ein Problem mit dem Windows Scheduler, dass so umschifft wird?
        Ist das bit meist deaktiviert, weil damit Angriffsvektoren ausgeschaltet werden?
        Nimmt man bei den paar Spielen das Risiko in Kauf, weil die Performance dadurch signifikant beeinflusst wird?
        Gibt es Funktionen aus Windows10, die bei diesen Spielen (nicht) genutzt werden und damit ein Einfluss durch dieses bit zu Tage kommt?

        Ist es wirklich ein Sichteheitsproblem, wenn Teile des Caches mal aktiviert und mal deaktiviert werden?
        Klingt eher nach Standard Operating Procedure - wenn auch nicht unbedingt während des Betriebs.

        Immerhin gibt es hier diverse Gamer, die ein ums andere Mal erklärt haben, diverse Sicherheitspatches für Intel CPUs nicht zu installieren, weil die Performance negativ beeinflusst wird und die Lücken real kaum bis nicht ausgenutzt werden.
      • Von Freiheraus
        Lol, wie gesagt erstmal kleinlaut bleiben. Wir werden zu Intel auch noch einiges hören, dort wird nämlich noch kräftiger "manipuliert".

        Btw, sind mittlerweile Microcodes die Fehler/Instabilitäten umgehen auch Manipulation oder gilt das nur für Treiber die den selben Effekt haben? Vielleicht noch etwas hochtrabender, skandalöser und geschwollener daherreden! Vielleicht klappt es dann und alle schreien stumpf mit... bis zum nächsten Zurückrudern oder Revidieren.
      • Von PCGH_Torsten Kokü-Junkie (m/w)
        Update:
        laut neuerem Post ist die Wirkung genau umgekeht: Bei 19 Spielen setzt der Treiber ein Bit, dass die Stabilität erhöht. Stellt aber natürlich trotzdem einen Trick da, wenn man es in allen anderen Fällen inaktiv lässt – eigentlich ist es sogar noch zweifelhafter, dass eine Zustand, der Abstürze verursachen kann, als Standard verwendet und nur in Einzelfällen gemäß Blacklist verlassen wird. Die Sicherheitslücke scheint darin zu bestehen, dass jeder Prozess die Treiberfunktion zur Manipulation dieser Bits ansteuern kann. Die eigentlich Aktion braucht also Treiber-Privilegien, aber das entsprechende Werkzeug ist ungeschützt zugänglich.

        Zitat von PCGH_Torsten
        Kompatiblität ist die große Stärke von PCI-E, aus Softwaresicht gibt es abgesehen von einer Hand voll Mangamentbefehle keinen Unterschied. Der Witz an dieser Story ist aber, dass es überhaupt kein PCI-Treiber ist, sondern scheinbar ein Cheat-Prozess, dessen Funktion gar nicht zum (Tarn-)Namen passt. Meiner Meinung nach starker Tobak – als unfair oder bedenklich einzustufende Optimierungen gab es immer mal wieder. Aber ich erinnere mich nicht daran, dass jemals zuvor jemand die Mogelei durch irreführende Maßnahmen zu verstecken versucht hat. Natürlich werden Tricks von niemandem auf dem Präsentierteller präsentiert, aber normalerweise heißt es hinterher immer: "Ach das, das ist doch total unwichtig. Das fanden wir einfach gar keiner Erwährnung wert, so normal ist sowas. Und falls sich da wirklich jemand dran gestört haben sollte, was wir für vollkommen ausgeschlossen halten, dann hätte derjenige sich doch schon viel früher beschwert, es ist ja offensichtlich."
        Natürlich von vorne bis hinten erlogene Ausflüchte, egal ob wir über Benchmarks erkennende Treiber, erhöhte Referenztakte oder reduzierte AF-Qualität sprechen, aber durch die Verwendung eines irreführenden Namens gibt AMD offen zu, dass sie die Funktion selbst für Schumelei handelt, über die man nicht öffentlich/nur in Code sprechn darf.

        Ich weiß nicht, was mit "der Text" gemeint ist, aber in unserer News kommt die von dir aufgestellt Behauptung nicht vor und die Twitter-Quelle berichtet von einem unmodifizierten Treiber. Wenn ich die Bezüge zwischen den aufeinanderfolgenden Tweets richtig zuordne (280-Zeichenhappen zur Beschreibung komplexer technischer Zusammenhänge ), befindet sich die Sicherheitslücke außerdem gar nicht im Treiber, sondern der Treiber greift auf einen komplett ungeschützten Teil der CPU zu, den auch andere Prozesse manipulieren könnte. Solange daraus maximal Abstürze resultieren können noch kein großes Problem, wäre aber selbst dann sehr ärgerlich wenn sich der Befehl zum Beispiel via Javascript auslösen ließe.
      Direkt zum Diskussionsende
  • Print / Abo
    Apps
    PCGH Magazin 07/2026 PC Games 06/2026 play5 07/2026 N-Zone 06/2026 Linux Magazin 06/2026 LinuxUser 06/2026 Raspberry Pi Geek 07/2026
    PC Games Hardware PC Games Linux Magazin Raspberry Pi Geek Computec Kiosk