
Et pour cause, contrairement à ce qui se fait jusqu'à présent, où les attaques tentent de rentrer un objet dans le kernel avec des primitives de lecture, d'écriture et d'exécution, sur PS5, l'hyperviseur et la protection XOM empêche toute modification, ou insertion par exemple de code .text. L'idée est alors née de créé PS5_kldload afin de contourner ces limitations, en s'appuyant sur un kernel alternatif sans modifier le kernel de la console. Basé sur kstuff, le framework de Sleirgoevy, il permet de lancer des primitives de lecture et d'écriture sans correctif direct. Deux étapes sont nécessaires au bon fonctionnement de PS5_kldload : Kekcalls, une interface utilisateur et le kernel Le concept de kekcalls a été introduit par kstuff, des calls sont encodés dans le registre RAX lors d'un syscall depuis l'Userland. Deux nouveaux Kekcalls ont été ajouté par buzzer-re, un nommé kmalloc pour allouer la mémoire dans le kernel et un autre nommé kproc_create pour créer des threads du kernel, aussi appelé kthreads. Gestion de la mémoire du kernel Afin d'obtenir une allocation de la mémoire exécutable dans le kernel de la PS5, la fonction kmem_alloc doit être modifiée et manipulée, des points d'arrêts spécifiques pour la PS5 doivent être utilisés, contrairement à la PS4 où un patch direct de la mémoire RWX est suffisant. Sur PS5, il faut utiliser kmem_alloc, et aussi un second correctif qui remplace les autorisations par défaut. PS5_kldload est nécessaire pour exécuter Linux sur PS5, actuellement, le loader ne prend en charge que la version 4.03. Il sera probablement porté vers d'autres versions prises en charge dans les prochains jours/semaines. Un tutoriel devrait également être disponible prochainement, car cet outil est relativement récent. Téléchargement : PS5_kldload
Source: https://www.logic-sunrise.com/forums/to ... nterpelle/