Une nouvelle étape vient d’être franchie dans la scène homebrew de la PlayStation 5 avec la publication de Poops-PS5-Java v1.1, première mise à jour importante de cette implémentation Java de l’exploit poops_ps5. Basé sur une vulnérabilité de type Use-After-Free (UAF) dans sys_netcontrol, cet outil exploite l’environnement BD-J du lecteur Blu-ray pour obtenir un accès avancé au système.
Contrairement aux approches plus classiques reposant sur le navigateur web, Poops-PS5-Java adopte une méthode alternative particulièrement ingénieuse : il utilise directement le lecteur Blu-ray comme point d’entrée. Ce choix technique permet de contourner certaines limitations des exploits web et offre une solution intéressante pour les utilisateurs disposant d’une PS5 équipée d’un lecteur physique.

Avec cette version 1.1, le développeur Jaime_Cyber s’est attaqué à l’un des principaux défauts des premières implémentations BD-J : leur manque de fiabilité. Les versions précédentes pouvaient entraîner des plantages fréquents du noyau, rendant l’exploitation instable et parfois frustrante.
Cette mise à jour introduit une série d’optimisations techniques visant à sécuriser la gestion des ressources système. Parmi les améliorations les plus notables, on retrouve l’utilisation massive de sockets factices afin d’écraser les pointeurs UAF encore présents en mémoire, ainsi que la réinitialisation des compteurs de référence internes. La désactivation complète des sockets IPv6 contribue également à réduire les comportements imprévisibles.
Ces ajustements permettent de limiter drastiquement les crashs du noyau, notamment lors de la navigation dans les menus ou à la fermeture de l’application BD-J, rendant l’expérience globale bien plus stable et fiable. La précision du timing joue un rôle crucial dans la réussite de ce type d’exploit, en particulier lorsqu’il s’agit de manipuler des conditions de course (race conditions). Sur ce point également, la version 1.1 apporte une amélioration significative.
La méthode Java classique Thread.sleep() a été abandonnée au profit d’un appel natif à sys_nanosleep, via une fonction interne (ksleep). Ce changement permet un contrôle beaucoup plus fin du timing, augmentant sensiblement les chances de succès de l’exploitation tout en réduisant les erreurs aléatoires.

Un processus d’exploitation simplifié
Au-delà de la stabilité et du timing, cette mise à jour se distingue également par une simplification globale du processus d’exécution. Certaines étapes complexes ont été supprimées, notamment les manipulations liées à swapSysent ou au détournement du processus cible.
Désormais, le code s’exécute directement au sein de l’environnement BD-J avec les privilèges nécessaires, ce qui rend l’ensemble plus fluide, plus rapide et moins sujet aux problèmes techniques. Cette approche plus directe contribue à rendre l’exploit plus accessible et plus robuste.
Une compatibilité toujours limitée
Comme pour les versions précédentes, l’exploit reste limité aux consoles PlayStation 5 fonctionnant sous un firmware 12.00 ou inférieur, et nécessitant un environnement BD-J non patché.
Son utilisation implique également la mise en place d’un environnement spécifique, incluant une image ISO compatible (comme BD-UN-JB), un PC sur le même réseau que la console, ainsi qu’un outil capable d’envoyer des payloads, tel que Netcat. La méthode Java classique Thread.sleep() a été remplacée par un appel direct à sys_nanosleep (via ksleep), offrant une précision bien supérieure. Cela permet :
- D’augmenter les taux de réussite
- De réduire les erreurs aléatoires
- De stabiliser les conditions de course (race conditions)
- Un processus simplifié
La version 1.1 simplifie également l’exécution :
- Suppression de mécanismes complexes comme swapSysent
- Abandon du détournement de processus cible
- Exécution directe dans l’environnement BD-J avec les privilèges nécessaires
Cette approche rend l’exploit plus propre, plus rapide et moins sujet aux bugs.
- Fonctionnalités principales
- Lecture/écriture noyau complète (R/W)
- Accès root via modification des ucred
- Activation des paramètres de debug (QA flags, UTOKEN, etc.)
- Loader ELF intégré (port 9021)
- Exécution de payloads personnalisés
Conditions requises, pour utiliser Poops-PS5-Java v1.1 :
- Une PlayStation 5 en firmware 12.00 ou inférieur
- Un environnement BD-J fonctionnel
- Une image ISO compatible (ex : BD-UN-JB 1.0)
- Un PC sur le même réseau
- Un outil d’envoi de payloads (ex : Netcat)
- Une approche BD-J toujours unique
Avec Poops-PS5-Java v1.1, la scène PS5 franchit une étape importante en matière de fiabilité. En corrigeant les problèmes de stabilité et en améliorant la gestion du timing, cette mise à jour transforme un exploit prometteur mais instable en un outil bien plus exploitable au quotidien.
Cette évolution confirme également l’intérêt de l’approche BD-J, qui s’impose progressivement comme une alternative crédible aux méthodes traditionnelles de jailbreak sur PS5.
Téléchargement : Poops-PS5-Java v1.1



Mon contenu
Homme




