Longue date pirate de console et développeur d’exploits SpecterDev a publié un exploit PS5 qui peut donner aux utilisateurs des privilèges root et un accès en lecture/écriture à de gros morceaux de mémoire système. Bien que cet exploit ne puisse pas être utilisé pour exécuter code arbitraire pour l’instant, il représente une étape importante vers l’exécution du code homebrew sur la console.
L’exploit, publié ce week-end, utilise une vulnérabilité FreeBSD dans le système d’exploitation qui était signalé au programme de primes HackerOne de PlayStation en janvier (une vulnérabilité très similaire sur la PS4 était signalé à PlayStation en 2020). L’utilisation de l’exploit repose sur la configuration d’un faux serveur DNS sur votre réseau local de sorte que l’accès au manuel à l’écran de la PS5 (qui est chargé via le navigateur Web caché du système) pointe plutôt vers une page de votre PC local.
À partir de là, l’exploit utilise une erreur dans la façon dont l’implémentation du navigateur de la PS5 gère le verrouillage de la mémoire lors de la définition des en-têtes de socket IPv6. Alors que les détails deviennent assez techniques, l’exploit met essentiellement en place une condition de course pour accéder à cette mémoire d’en-tête de socket exposée avant qu’elle ne soit complètement verrouillée. Ce petit morceau d’accès est ensuite utilisé comme un crochet pour commencer à lire et à écrire des données arbitraires dans de grandes zones de la mémoire de la PS5 via un serveur RPC sur la machine hôte.
Limitations
Étant donné que cet exploit repose sur une condition de concurrence, SpecterDev avertit qu’il ne fonctionne qu’environ 30% du temps et peut entraîner plusieurs paniques du noyau (et de longs redémarrages ultérieurs du système) avant que l’accès en lecture/écriture ne soit obtenu avec succès. L’exploit ne peut pas non plus actuellement écrire dans un « espace noyau » de bas niveau (qui est toujours protégé par un hyperviseur intact) ou même exécuter du code qu’un utilisateur pourrait écrire dans l’espace utilisateur (qui repose sur des zones de « Execute Only Memory » qui sont toujours protégées).
Pourtant, l’exploit donne accès au menu de débogage de la PS5, comme le pirate Lance McDonald démontré dans un tweet hier soir. Il fournit également aux pirates PS5 un point d’entrée pour en savoir plus sur les systèmes de mémoire et de sécurité de la PS5 et pourrait servir de tête de pont potentielle pour développer un hack entièrement compatible homebrew pour la console. Cela dit, SpecterDev prévient que « le homebrew demandera beaucoup d’efforts » en raison des protections de sécurité susmentionnées qui sont toujours intactes.
C’est… beau.
La PlayStation 5 a été jailbreakée. pic.twitter.com/54fvBGoQGw
— Lance McDonald (@manfightdragon) 3 octobre 2022
Alors que cet exploit fonctionne actuellement sur la version 4.3 du firmware PS5 (sortie en octobre dernier), SpecterDev spécule que quelques légères modifications pourraient obtenir un exploit similaire pour fonctionner sur la version 4.5 du firmware (sortie en décembre dernier). Sony a marqué le problème comme « résolu » sur HackerOne en avril, suggérant que la même vulnérabilité ne fonctionnera probablement pas dans les versions de firmware publiées depuis lors.
Cela rend le point d’entrée de SpecterDev différent d’un exploit PS5 distinct, « essentiellement non réparable » révélé par le pirate CTurt plus tôt ce mois-ci. Cette méthode utilisait un problème distinct avec la compilation « juste à temps » de la PS5 de jeux PS2 sur PS4 émulés pour obtenir un crochet dans la mémoire « espace utilisateur » de la console pour écrire et exécuter du code homebrew.
Bien que l’époque où les propriétaires réguliers de PS5 pouvaient installer leurs propres applications homebrew sur la PS5 puisse encore être un moyen de s’éloigner, la communauté du piratage ne se reposera pas jusqu’à ce que ce moment arrive.