Poops-ps5-java
Un port Java complet du noyau poops ps5.lua IPv6 UAF exploite initialement développé par Gezine et egycnq, basé sur la vulnérabilité ExploitNetControlImpl...
Choisir une liste...
POOPS PS5 - BD-J Kernel Exploit & ELF Loader
Un port Java complet du poops_ps5.lua Exploitation du noyau IPv6 UAF Gezine et egycnq, sur la base ExploitNetControlImpl vulnérabilité découverte par Les flots. Ce projet est conçu pour fonctionner nativement dans l'environnement PlayStation 5 BD-J (Blu-ray Java).
Cette charge utile chaînes un Netgraph/sys_netcontrol La vulnérabilité après utilisation (UAF), en utilisant les en-têtes de routage IPv6 pour la pulvérisation de tas, pour obtenir une lecture/écriture arbitraire du noyau, corrige les identifiants du système pour les privilèges root, permet Debug Settings via un patch mémoire GPU DMA, et déploie un chargeur ELF.
Caractéristiques
- Amandes complètes: Exécution UAF stable avec réparation triplet dynamique et remise en état Kqueue pour éviter les paniques du noyau.
- Escalade des privilèges : Pouvoirs relatifs au processus d'approbation (
ucred) pour obtenir un accès racine. - Paramètres de débogage & #160;: Utilise GPU DMA pour patcher les drapeaux QA, l'ID cible et UTOKEN dans la mémoire du noyau protégée.
- Chargeur ELF: Attribue et cartographie en toute sécurité la mémoire exécutable en utilisant l'aliasing de mémoire partagée (respectant les protections FreeBSD W^X) et crée un thread système écoutant sur le port 9021 pour l'exécution de charge utile.
Historique et développement du projet
Ce projet a commencé comme un défi technique. En raison d'un manque de connaissance initiale en profondeur des internes de FreeBSD et du noyau PS5, le port initial de poops_ps5.lua à Java a été généré à l'aide de grands modèles de langage (LLMs).
À partir de cette fondation créée par l'IA, on a procédé à des essais itératifs et au débogage pour stabiliser la chaîne d'exploitation.
Remerciements
Ce projet repose en grande partie sur la recherche et les contributions de la communauté de sécurité PlayStation :
- Gezine & egycnq: Pour l'original
poops_ps5.luascript et la mise en œuvre centrale de la chaîne d'exploitation. - Le flot (Andy Nguyen): Pour la découverte du
ExploitNetControlImplvulnérabilité et la recherche originale BD-J sandbox s'échappent. - SpecterDev (Cryptogène), ChendoChap, M. John Törnblomet les ps5-payload-dev contributeurs & #160;: Pour leurs travaux fondamentaux sur le chargement PS5 ELF, la cartographie de la mémoire et l'écosystème global de la charge utile.
- Testeurs: Un grand merci à DrYenyen, EchoStretchet Viktorious-x, qui a généreusement offert leur temps et consoles pour tester et déboguer cette charge utile malgré ne pas me connaître au préalable.
Exigences
- Un PS5 sur micrologiciel 12h00 ou moins avec un environnement BD-J non relié.
- Un environnement de chargeur BD-J fonctionnant sur la console.
- Note: Pour nos tests et développement, nous avons utilisé avec succès BD-UN-JB 1.0 ISO, qui inclut le chargeur de Jar utilisant l'API de TheFlow.
Exécution
- Envoyer la compilation
.jarfichier vers le chargeur BD-J écouté sur votre console (généralement via le port 9025). - Attendez que le processus termine les 7 étapes. Une fois terminé, les paramètres de débogage deviendront visibles, et le chargeur ELF sera actif.
- Fermez l'application Blu-ray.
- Envoyez votre charge utile finale (p. ex.
.elffichier) à port 9021.
Soutien
Si vous avez trouvé ce projet utile et que vous voulez soutenir mon travail, envisagez de m'acheter un café!