Plus les jours passent, plus les propositions deviennent interessantes sur le firmware 4.05, c'est désormais un fly mod qui vient d'arriver pour GTA V.
Son auteur nous informe "Maintenez carré pour voler. Une fois en mode volant, maintenez R2 pour stimuler le vol. Comme un petit addon, cette version permet également d'accéder à North Yankton ".
Objectif
Une grande partie de GTA V est contrôlée par des fichiers de script personnalisés écrits par Rockstar dans leur propre format. Un processeur virtuel est inclus dans chaque version du jeu pour interpréter ces scripts. La principale façon d'interagir avec eux et de contrôler le jeu est d'invoquer les Natives. Les Natives sont des fonctions définies dans l'exécutable du jeu. De la même façon que les scripts utilisent des Natives pour contrôler le jeu, les appeler arbitrairement permettra à l'appelant de contrôler le jeu selon son désir. Le but de ce payload est de fournir un moyen facile de le faire. Il inclut quelques petits exemples : rendre le joueur invincible, donner au joueur un super saut, et téléporter le joueur quand une combinaison de boutons est pressée.
Configuration de l'exécution
Tout d'abord, un payload du noyau est exécutée pour échapper de la sandbox, augmenter les privilèges du navigateur Web et créer les correctifs appropriés pour le kernel. Le payload désactive aussi ASLR pour les processus nouvellement créés, ce qui rend beaucoup plus facile de les modifier. Par la suite, le payload vérifie en permanence les processus en cours d'exécution en attendant un appel eboot.bin.
Une fois qu'un processus de jeu est trouvé, le syscall ptrace est utilisé pour lire et écrire. Avec ASLR désactivé, l'EBOOT démarre toujours à 0x400000 en mémoire. Quelques octets sont lus à partir de l'EBOOT pour vérifier que le jeu est bien GTA V et pour détecter la région.
Les fonctions de création de syscalls, d'invocation des Natives et de configuration de l'environnement sont copiées dans un espace exécutable libre dans EBOOT. IS_PLAYER_ONLINE est accroché avec la fonction pour configurer l'environnement d'exécution. Cette fonction alloue plus de mémoire dans le processus de GTA puisque l'EBOOT a un espace limité. Une fois cette fonction d'installation appelée depuis GTA, le payload copie une fonction principale standard dans cet espace nouvellement alloué et sort.
Pour savoir comment vous en servir : twitter.com/2much4ux
L'explication générale de fonctionnement
Téléchargement : nicefly_405 .bin (17 Ko)
Son auteur nous informe "Maintenez carré pour voler. Une fois en mode volant, maintenez R2 pour stimuler le vol. Comme un petit addon, cette version permet également d'accéder à North Yankton ".
Objectif
Une grande partie de GTA V est contrôlée par des fichiers de script personnalisés écrits par Rockstar dans leur propre format. Un processeur virtuel est inclus dans chaque version du jeu pour interpréter ces scripts. La principale façon d'interagir avec eux et de contrôler le jeu est d'invoquer les Natives. Les Natives sont des fonctions définies dans l'exécutable du jeu. De la même façon que les scripts utilisent des Natives pour contrôler le jeu, les appeler arbitrairement permettra à l'appelant de contrôler le jeu selon son désir. Le but de ce payload est de fournir un moyen facile de le faire. Il inclut quelques petits exemples : rendre le joueur invincible, donner au joueur un super saut, et téléporter le joueur quand une combinaison de boutons est pressée.
Configuration de l'exécution
Tout d'abord, un payload du noyau est exécutée pour échapper de la sandbox, augmenter les privilèges du navigateur Web et créer les correctifs appropriés pour le kernel. Le payload désactive aussi ASLR pour les processus nouvellement créés, ce qui rend beaucoup plus facile de les modifier. Par la suite, le payload vérifie en permanence les processus en cours d'exécution en attendant un appel eboot.bin.
Une fois qu'un processus de jeu est trouvé, le syscall ptrace est utilisé pour lire et écrire. Avec ASLR désactivé, l'EBOOT démarre toujours à 0x400000 en mémoire. Quelques octets sont lus à partir de l'EBOOT pour vérifier que le jeu est bien GTA V et pour détecter la région.
Les fonctions de création de syscalls, d'invocation des Natives et de configuration de l'environnement sont copiées dans un espace exécutable libre dans EBOOT. IS_PLAYER_ONLINE est accroché avec la fonction pour configurer l'environnement d'exécution. Cette fonction alloue plus de mémoire dans le processus de GTA puisque l'EBOOT a un espace limité. Une fois cette fonction d'installation appelée depuis GTA, le payload copie une fonction principale standard dans cet espace nouvellement alloué et sort.
Pour savoir comment vous en servir : twitter.com/2much4ux
L'explication générale de fonctionnement
Téléchargement : nicefly_405 .bin (17 Ko)
