Mast1c0re: PS4/PS5-Benutzermodus-Exploit erreicht! (McCaulay Hudson Writeup Teil 3, detaillierte Implementierung bereitgestellt)
Der Sicherheitsforscher McCaulay Hudson hat nach Teil 1 und Teil 2 vor einigen Tagen Teil 3 seines Mast1c0re-Berichts veröffentlicht. Dieser neue Blogbeitrag erklärt, wie Hacker jetzt nativen PS4-Code ausführen können, indem wir den PS2-Emulator umgehen, können wir jetzt nativen PS4-Code auf der PS4 oder der PS5 ausführen (mithilfe von ROP-Gadgets).
Was ist Mast1c0re für PS5 und PS4?
Mast1c0re ist ein ungepatchter Exploit für PS4 und PS5, der eine Schwachstelle in der PS2-Emulationsschicht von Sonys neueren Konsolen ausnutzt. Die Schwachstelle wurde im September letzten Jahres vom PlayStation-Hacker CTurt offengelegt und sehr detailliert beschrieben , aber damals wurde keine vollständige „benutzerfreundliche“ Implementierung veröffentlicht.
Damals erklärte CTurt, Sony habe nicht vor, die Schwachstelle zu beheben, was durch neuere Videos bestätigt zu werden scheint, die zeigen, dass die Schwachstelle immer noch vorhanden ist, in der neuesten PS5 6.50-Firmware (und es ist davon auszugehen, dass sie in PS4 10.01 als gut) ab Januar 2023.
Die kürzlich veröffentlichten Beta-Firmwares PS5 7.00 und PS4 10.50 müssen noch bestätigt werden, aber es gibt guten Grund zu der Annahme, dass sie ebenfalls anfällig sind.
Mast1c0re Exploit: Ausführen von nativem PS4-Code auf PS4 oder PS5
In den Teilen 1 und 2 haben wir gesehen, wie eine Pufferüberlauf-Schwachstelle im PS2-Spiel Okage Shadow King (das in einem eingebetteten PS2-Emulator auf der PS4/PS5 ausgeführt wird) es uns ermöglichte, nativen PS2-Code innerhalb der Einschränkungen dieses Emulators auszuführen.
In diesem kürzlich erschienenen Blogbeitrag erklärt McCaulay, wie er einen zweiten Pufferüberlauf auslöst (dank eines Fehlers im PS2-Emulatorcode), diesmal um in den PS4-Speicher zu schreiben.
Durch Überschreiben eines Codezeigers des PS2-Emulators kann der Hacker jede native PS4-Funktion aufrufen, die dem PS2-Emulator zur Verfügung steht (also theoretisch jede Funktion, die über Bibliotheken verfügbar ist, die vom Emulator importiert werden. Rendering, Eingabe, Audio , usw. alles, was für ein normales PS4-Spiel erforderlich ist, ist wahrscheinlich möglich).
Der PS4-Speicher ist jedoch durch ASLR geschützt, sodass es nicht möglich ist, zu „raten“, wohin die Codeausführung zeigen soll, da sich die Routinen an halbzufälligen Stellen im Speicher befinden. McCaulay Hudson beschreibt in seinem Artikel, wie er dieses Hindernis überwinden kann, indem er die relative Adresse eines bekannten Codestücks innerhalb des Eboots verwendet, um dann alle anderen Einträge anhand seines Zeigers erraten zu können. (Hier sind mehrere Tricks erforderlich, um die relative Position jeder Bibliothek zu ermitteln und auf jede davon zugreifen zu können).
Letztendlich hat der Hacker Zugriff auf den nativen Benutzermodus-Code auf der PS4.
Sie können alle Details zu McCaulays Zuschreibung hier lesen.
Mast1c0re – wie geht es weiter?
An diesem Punkt haben Hacker mit dem mast1c0re-Exploit einen PS4-Exploit im Benutzermodus auf den neuesten PS4- und PS5-Firmwares erzielt. Dies entspricht einem Webkit-Exploit, mit dem wir ziemlich vertraut sind, und müsste mit einem Kernel-Exploit kombiniert werden, um zu einem Jailbreak auf PS4 zu führen. (Und für die PS5 würde dies zu etwas Ähnlichem führen, wie wir es bereits mit dem Kernel-Exploit haben, nämlich nicht viel, aber immer noch viel.
Meines Wissens ist dies der allererste Usermode-Exploit auf PS4 9.50 und höher (9.03/9.04 haben technisch gesehen den BD-JB-Exploit) und für PS5 auf 5.00 und höher. also ist es natürlich eine ziemlich große sache. Aber ohne einen Kernel-Exploit, der damit einhergeht, besteht das Risiko, dass Endbenutzeranwendungen eingeschränkt bleiben (bis sich jemand entscheidet, einen Homebrew Loader im Benutzermodus auf PS4 zu erstellen, a la VHBL ).
Sie können den Exploit ausführen und sich selbst damit befassen. Wir haben hier einige Tutorials für die Grundlagen (PS2-Ausführung), und an dieser Stelle müssen Sie wahrscheinlich das, was in diesem Teil 3 beschrieben wird, selbst für PS4-nativen Code implementieren.
Quelle: McCaulay (Danke an alle, die mich darauf angesprochen haben!)