1 points par GN⁺ 2024-08-08 | 1 commentaires | Partager sur WhatsApp

TONY HAWK’S PRO STRCPY

Vue d’ensemble

  • Projet lancé en 2016 pour trouver un nouveau bug permettant de hacker la Xbox
  • Les consoles de jeu du début des années 2000 comportaient peu de mécanismes d’atténuation de sécurité, ce qui les rend adaptées à l’apprentissage du hacking
  • L’analyse des fichiers de sauvegarde de Tony Hawk’s Pro Skater 4 a permis de découvrir une vulnérabilité de buffer overflow

Part 1: Pour commencer

  • Vulnérabilité découverte via la fonctionnalité "Create-A-Park" de Tony Hawk’s Pro Skater 4
  • Un buffer overflow se produit lors de la copie de la chaîne du nom du gap du fichier de sauvegarde avec la fonction strcpy
  • Création d’un fichier de sauvegarde malveillant puis exécution sur Xbox pour obtenir des privilèges d’exécution de code

Part 2: Exécution de code à distance

  • Recherche d’une méthode pour hacker la console via le réseau sans carte mémoire
  • Tentative de compromettre la console cliente en envoyant un fichier de sauvegarde lors d’une partie multijoueur en LAN
  • Un buffer overflow se produit lorsque la console cliente charge le fichier de sauvegarde transmis par l’hôte
  • Écriture d’un gestionnaire de messages réseau afin de transmettre un exécutable de payload secondaire à la console cliente

Analyse des variantes

  • Des vulnérabilités similaires ont aussi été trouvées dans d’autres jeux comme Tony Hawk’s Pro Skater 3, Tony Hawk’s Underground 1 & 2 et Tony Hawk’s American Wasteland
  • Certains jeux utilisent des stack cookies pour empêcher les buffer overflows

Résultat final

  • Quand la console cliente se connecte à la console hôte, un fichier de sauvegarde malveillant est transmis via le réseau
  • La console cliente reçoit puis exécute l’exécutable de payload
  • Exécution de code à distance et transfert de fichiers asynchrone réussis

Le résumé de GN⁺

  • Cet article traite du processus d’exploration et d’exploitation de failles de sécurité sur d’anciennes consoles de jeu comme la Xbox
  • Les anciennes consoles, avec peu de mécanismes d’atténuation de sécurité, sont adaptées à l’apprentissage du hacking, et divers bugs permettent d’obtenir des privilèges d’exécution de code
  • L’article explore des méthodes d’exécution de code à distance via le réseau et montre comment compromettre une console sans carte mémoire
  • Des vulnérabilités sont également découvertes et analysées dans d’autres jeux aux fonctionnalités similaires, ce qui permet d’étudier diverses techniques de hacking
  • Cet article fournit des informations utiles aux personnes intéressées par le hacking et la recherche en sécurité, et peut aider à mieux comprendre les failles de sécurité des anciennes consoles

1 commentaires

 
GN⁺ 2024-08-08
Commentaire Hacker News
  • Le module de clé publique de la clé habibi ne diffère que de 4 octets de la clé publique RSA de Microsoft

    • La clé MS est une clé RSA de 2048 bits
    • En modifiant l’exposant à 3, il est facile de trouver une clé similaire
    • Cependant, la charge utile qui utilise la clé habibi ne modifie pas l’exposant de la routine de vérification de signature RSA
    • Elle semble toujours effectuer la vérification avec l’exposant 65537
    • On ne voit pas clairement comment cela est possible
  • Un entier de 2048 bits pourrait potentiellement être factorisé assez simplement

    • Le code pourrait fonctionner en modifiant aléatoirement 4 octets puis en tentant une factorisation
    • Cela pourrait produire au final un module public avec de nombreux petits facteurs
    • Un module RSA a généralement deux facteurs premiers, mais mathématiquement il n’y a pas de problème à en avoir davantage
  • Un softmod Xbox 360 était possible via le nom du parc dans un jeu Tony Hawk

    • Utilisation d’une chaîne ROP de 24 segments
    • La description concise des fonctionnalités relatives à l’hyperviseur et les réflexions sur un botnet x360 éveillent une certaine nostalgie de la Xbox 360
  • Il aurait fallu utiliser strncpy au lieu de strcpy

    • Tony Hawk est connu pour défendre les équipements de protection
    • C’est dommage pour l’exploit visant le mod THUG PRO
    • Le mod existe depuis plus de 10 ans et son développeur d’origine a disparu
    • Le mod est désormais inutilisable, et personne ne veut l’utiliser à cause du risque d’un exploit avec privilèges complets
    • Espérons que cet article atteindra quelqu’un intéressé par un correctif du mod
  • Tony Hawk est un skateur professionnel, pas un analyste en sécurité

    • À la fin des années 90 et au début des années 2000, il passait naturellement son temps à rendre sa série de jeux possible plutôt qu’à auditer du code
  • Je me demande quand, où et comment la clé privée de la clé habibi a fuité

    • L’OP a pu exécuter des exécutables non signés en appliquant un patch sur les 4 octets de différence entre la clé MS et la clé habibi
    • Cela signifie qu’il avait mis la main sur la clé privée
  • En faisant de la décompilation PSX, j’ai vu beaucoup de cas similaires

    • memmove est lié via la bibliothèque SDK, mais strcpy est fourni par le BIOS
    • Jusqu’en 1997, les versions ultérieures du SDK pouvaient être corrigées vers une version bibliothèque
  • J’ai lu de nombreuses analyses d’exploits comme celle-ci, et j’espère pouvoir en lire encore 100 autres à l’avenir

    • Excellent article
  • C’est un bon exemple d’une mauvaise mentalité de sécurité dans le développement console

    • L’idée selon laquelle « il suffit d’analyser les données que nous avons enregistrées » est erronée
    • Une console ne devrait pas considérer l’utilisateur comme un ennemi
    • Mais si c’est le cas, le jeu doit alors adopter une mentalité de sécurité adaptée
  • Imaginez une extension VSCode qui invente des noms de tricks et attribue des points de combo pour des séquences de frappes au clavier

    • Tony Hawk’s Pro-grammer