
PabloMK7 hat einen Fehler in zahlreichen First-Party 3DS-, Wii-U- und Switch-Spielen öffentlich gemacht, der es einem Angreifer ermöglicht, unsignierten Code auszuführen, selbst wenn die Konsole des Opfers nicht gemoddet ist. Nintendo hat den Fehler bereits in einigen Spielen behoben.
Die Schwachstelle, die "ENLBufferPwn" getauft wurde, wurde bereits von mehreren Personen im Jahr 2021 entdeckt und nach und nach an Nintendo gemeldet. Laut dem CVSS 3.1 Calculator handelt es sich dabei um eine Lücke mit einer Schwere von 9,8 von 10 Punkten.
Welche Spiele sind/waren betroffen?
- Mario Kart 7 (behoben in v1.2, kürzlich erschienen)
- Mario Kart 8 (nicht behoben)
- Mario Kart 8 Deluxe (behoben in v2.1.0)
- Animal Crossing: New Horizons (behoben in v2.0.6)
- ARMS (behoben in v5.4.1)
- Splatoon (nicht behoben)
- Splatoon 2 (behoben in v5.5.1)
- Splatoon 3 (behoben Ende 2022, genaue Version unbekannt)
- Super Mario Maker 2 (behoben in v3.0.2)
- Nintendo Switch Sports (behoben Ende 2022, genaue Version unbekannt)
- eventuell noch mehr
Was genau ist das Problem?
Konkret handelt es sich bei ENLBufferPwn um einen Buffer-Overflow in der C++-Klasse "NetworkBuffer", die von einigen First-Party-Spielen verwendet wird. Diese Klasse enthält zwei Methoden "Add" und "Set", die den Buffer mit Daten von anderen Spielern befüllen. Allerdings wird dabei nicht geprüft, ob diese Daten überhaupt in den Buffer passen, was zu einem Buffer-Overflow führt und ausgenutzt werden kann. Eine genauere technische Erklärung finden Interessierte in der GitHub-Repo.
Welche Auswirkungen hat das?
Ein Angreifer kann sämtlichen Code auf fremden Geräten ausführen. In einem Video sieht man, wie in einer alten Version von Mario Kart 7 das HOME-Menü ohne Zutun des Nutzers geöffnet wird und in einem Proof-of-Concept-Video ist zu sehen, wie der SafeB9SInstaller auf einer ungemoddeten Konsole ausgeführt wird. Ein anderes Proof-of-Concept zeigt unsignierten Code auf der Wii U über den Online-Modus von Mario Kart 8.
Man kann nur hoffen, dass Nintendo den Fehler auch in den Wii-U-Spielen behebt.
Soll in MK8 4.2 und Splatoon 2.12.1 gefixt sein; Updates kamen bei mir heute
https://wiidatabase.de/mario-kart-8-und-splatoon-ab-03-august-2023-wieder-online-spielbar/
Sollte auch nur als Info für die gefixten Versionsnummern dienen
Communitypatch ist verfügbar: https://github.com/PretendoNetwork/rce_patches
Danke! https://wiidatabase.de/patch-fuer-enlbufferpwn-als-aroma-plugin-fuer-die-wii-u-veroeffentlicht/
jaja ! eklatante Fehler, Hier !
Erster Gedanke: Kann man damit nicht ein Reboot_to_payload abfeuern und damit Atmosphère auf einer OLED Switch chainloaden ohne Modchip?
Die Switch hat keinen aktuellen Software-Exploit den man nützen könnte. Gibt ja noch TrustZone etc. wo man "durch" müsste. Des Weiteren nutzt die Switch bspw. auch ASLR um solche Exploits zu verhindern.
EDIT: https://wiki.wiidatabase.de/images/7/70/Switch_Security_Model.png
Genau das käme noch dazu. Irgendwann wird man alle Spiele ausgenutzt haben und Nintendo kann es relativ schnell patchen.