Les fichiers de repère d’indexation de CD sont au cœur d’un sérieux exploit de code à distance Linux

Agrandir / Les fichiers Cue étaient beaucoup plus connus, à l’époque où nous utilisions tous des CD-R pour faire des copies de sauvegarde légales du matériel que nous possédons en totalité.

Getty Images

Cela fait très longtemps que l’utilisateur d’ordinateur moyen n’a pas pensé aux fichiers .cue, ou feuilles de repère, les bits de métadonnées qui décrivent les pistes d’un disque optique, comme un CD ou un DVD. Mais les feuilles de repère retiennent à nouveau l’attention, pour toutes les mauvaises raisons. Ils sont au cœur d’un exploit en un clic qui pourrait permettre à un attaquant d’exécuter du code sur des systèmes Linux équipés de bureaux GNOME.

CVE-2023-43641, divulgué par GitHub le 9 octobre, est un problème de corruption de mémoire (ou d’écriture de tableau hors limites) dans la bibliothèque libcue, qui analyse les feuilles de repère. Le NIST n’a pas encore fourni de note pour ce problème, mais la soumission de GitHub lui attribue une note de 8,8, soit « Élevé ». Bien que la vulnérabilité ait été corrigée dans la bibliothèque principale, les distributions Linux devront mettre à jour leurs bureaux pour la corriger.

Les bureaux GNOME disposent, par défaut, d’un « mineur de suivi » qui se met automatiquement à jour chaque fois que certains emplacements de fichiers dans le répertoire personnel d’un utilisateur sont modifiés. Si un utilisateur était obligé de télécharger une feuille de repères tirant parti de la vulnérabilité de libcue, le système de suivi d’indexation de GNOME lirait la feuille de repères et le code de 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 article de blog mais n’a pas encore publié la preuve de concept permettant l’application des correctifs. Vous pouvez tester la vulnérabilité de votre système à l’aide d’une feuille de test qu’il propose, ce qui devrait déclencher « un crash bénin ».

Le 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 inciter libcue à enregistrer un nombre négatif pour un index. Ensuite, comme une autre partie de la routine d’analyse 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. Le correctif proposé par Backhouse ajoute une seule vérification de condition à la routine de définition d’index.

Le billet de blog de Backhouse explique plus en détail comment les trackers-mineurs, comme ceux de GNOME, sont particulièrement vulnérables à ce type d’exploit.

La solution actuelle consiste pour les utilisateurs de distributions basées sur GNOME à mettre à jour leurs systèmes dès que possible. La vulnérabilité dans libcue est corrigée à partir de la version 2.3.0. Libcue est généralement un projet plutôt discret, maintenu en grande partie par Ilya Lipnitskiy seul. Cela illustre, une fois de plus, l’énorme quantité d’infrastructures technologiques soutenues par de minuscules projets non financés.

Ce n’est pas la première contribution de Backhouse aux grandes vulnérabilités de Linux. Il a déjà découvert des problèmes avec les utilisateurs standard devenant root avec quelques commandes et un exploit Polkit qui offrait également un accès root. Backhouse, bien qu’il soit régulièrement porteur de mauvaises nouvelles, a ajouté cette note de bas de page à sa dernière divulgation de vulnérabilité : « J’utilise actuellement Ubuntu 23.04 comme système d’exploitation principal et je amour l’environnement de bureau GNOME. »

Source-147