Les fichiers d’indexation CD sont le cœur d’une grave exploitation de code à distance sous Linux.

Il y a très longtemps que l’utilisateur moyen d’ordinateur ne pensait plus aux fichiers .cue ou aux feuilles de cue, ces bits de métadonnées qui décrivent les pistes d’un disque optique comme un CD ou un DVD. Mais les feuilles de cue attirent à nouveau l’attention, et pas pour les bonnes raisons. Elles sont au cœur d’une exploitation en un clic qui pourrait donner à un attaquant un accès à des codes exécutables sur des systèmes Linux avec des bureaux GNOME. CVE-2023-43641, dévoilé par GitHub le 9 octobre, est une question de corruption de la mémoire (ou d’écriture d’un tableau hors limites), dans la bibliothèque libcue, qui analyse les feuilles de cue. NIST n’a pas encore fourni de note pour cette question, mais la soumission de GitHub la note 8,8, soit « élevée ». Bien que la vulnérabilité ait été corrigée dans la bibliothèque centrale, les distributions Linux devront mettre à jour leurs bureaux pour la corriger. Les bureaux GNOME ont, par défaut, un « tracker miner » qui se met à jour automatiquement chaque fois que certains emplacements de fichiers dans le dossier personnel d’un utilisateur sont modifiés. Si un utilisateur était contraint de télécharger une feuille de cue qui tirait parti de la vulnérabilité de libcue, le tracker d’indexation GNOME lirait la feuille de cue, et le code contenu dans cette feuille pourrait être exécuté. Kevin Backhouse, membre du Security Lab de GitHub, propose une démonstration vidéo de l’exploit dans son blog, mais n’a pas encore publié le concept de preuve pour permettre la correction. Vous pouvez tester la vulnérabilité de votre système avec une feuille de cue de test qu’il propose, qui devrait provoquer « une crash bénin ». La bug est spécifique à la façon dont libcue lit l’index d’une piste de disque ou son numéro et sa longueur. En raison des outils système qu’il utilise, vous pouvez tromper libcue pour enregistrer un nombre négatif pour un index. Ensuite, parce qu’une autre partie de la routine de numérisation ne vérifie pas si un numéro d’index est négatif avant de l’écrire dans un tableau, un attaquant peut écrire en dehors des limites du tableau. La proposition de Backhouse ajoute une simple vérification de condition à la routine de définition de l’index.

Share the Post: