Une faille logique entre le système de suggestion de packages « commande introuvable » d’Ubuntu et le référentiel de packages snap pourrait permettre aux attaquants de promouvoir des packages Linux malveillants auprès d’utilisateurs sans méfiance.

Le problème provient de la capacité de l’utilitaire à suggérer des packages instantanés à installer lorsqu’ils sont manquants sans mécanisme de validation pour s’assurer que les packages sont authentiques et sûrs.

L’échappatoire a été découverte par des chercheurs d’Aqua Nautilus qui ont découvert qu’environ 26% des commandes de packages Advanced Package Tool (APT) risquent d’être imitées par des packages snap malveillants, présentant un risque important pour la chaîne d’approvisionnement pour les utilisateurs de Linux et du sous-système Windows pour Linux (WSL).

Il convient de noter que bien que le rapport d’Aqua Nautilus se concentre sur Ubuntu, le problème a des implications plus larges qui vont au-delà de la distribution Linux populaire.

Par exemple, toutes les fourches Ubuntu ou distributions Linux qui utilisent l’utilitaire « commande introuvable » par défaut, ainsi que le système de package Snap, sont également vulnérables.

Absence de contrôles à toutes les étapes
L’utilitaire’ command-not-found ‘ est un script Python qui suggère des packages à installer pour vous permettre d’exécuter un programme spécifique qui n’est actuellement pas installé.

Par exemple, si vous vouliez exécuter le mojo, mais que le programme n’est pas installé, le script command-not-found recommandera les packages à installer afin que vous puissiez utiliser la commande.

Suggestion d’installation de paquet

Cependant, sa sécurité présuppose qu’une diligence raisonnable a été effectuée aux niveaux inférieurs de la chaîne d’approvisionnement pour s’assurer que les emballages suggérés par l’utilitaire sont sûrs à installer.

Le mécanisme de suggestion de l’utilitaire repose sur une base de données interne pour les packages APT et une base de données régulièrement mise à jour à partir du magasin Snap pour les packages Snap, permettant de corréler les commandes avec les packages.

Comme l’explique Aqua Nautilus, il est relativement facile pour les attaquants de publier des snaps malveillants sur le Snap Store, étant donné l’absence de processus de révision rigoureux par rapport aux packages APT.

Les packages Snap peuvent être publiés en tant que « strict » ou « classic », le premier limitant le logiciel à un environnement en bac à sable et le second offrant un accès illimité, tout comme les packages APT.

Les attaquants peuvent prendre le risque de publier leurs mauvaises applications en tant que « classiques ». »Cependant, ceux-ci nécessitent un examen manuel avant d’être approuvés, et les chances de dépasser ces examens si la fonctionnalité malveillante est correctement dissimulée sont élevées.

Les chercheurs disent que même les snaps « stricts » sont extrêmement risqués car ils peuvent abuser de la possibilité d’utiliser des « interfaces » pour une interaction étendue avec des ressources externes ou le serveur d’affichage du système hôte, en particulier lorsque X11 est utilisé, permettant potentiellement d’écouter d’autres applications et d’effectuer un enregistrement de frappe.

Certaines des interfaces Snap disponibles

De plus, les analystes d’Aqua soulignent le risque d’abuser de la fonction de mise à jour automatique des packages snap pour fournir de « nouveaux » exploits sur un système compromis qui cible les failles nouvellement découvertes.

Un exemple pertinent de ce risque concerne les failles du noyau Linux. Étant donné que les packages snap partagent le même noyau système que tous les logiciels exécutés sur le système, ils peuvent potentiellement exploiter une faille pour échapper au bac à sable.

Risques de faute de frappe et d’usurpation d’identité
Tout ce qui précède ouvre la voie à une situation risquée tant que les attaquants trouvent un moyen de promouvoir leurs packages via l’utilitaire « commande introuvable », mais comme l’expliquent les analystes, il existe également une marge confortable pour cela.

La première et la plus simple astuce consiste à associer des commandes contenant des erreurs de frappe (par exemple,’ ifconfigg ‘au lieu de ‘ifconfig’) à des packages snap malveillants, ce qui amène l’utilitaire ‘command-not-found’ à suggérer l’installation de logiciels malveillants à l’utilisateur, qui est peu susceptible de se rendre compte de sa faute de frappe à ce stade.

Pointant vers un package risqué lorsque l’utilisateur fait une faute de frappe courante

La deuxième méthode implique que les attaquants identifient et enregistrent des noms instantanés non réclamés dont les utilisateurs pourraient s’attendre à l’existence, souvent parce qu’ils correspondent à des commandes ou des alias connus.

« Si un développeur souhaite que son snap exécute une commande qui s’écarte du format . et n’est pas simplement , il doit demander un alias », expliquent les chercheurs.

« Une telle demande lance un processus d’examen manuel dans lequel l’alias demandé est voté pour garantir qu’il correspond à la candidature. »

Cependant, si les développeurs n’enregistrent pas de véritable snap sous cet alias, un acteur malveillant peut télécharger ses propres packages sous ce nom, qui seront ensuite suggérés par l’outil command-not-found.

Cette approche exploite une faille dans le système de dénomination et d’alias des snaps, permettant l’usurpation d’identité de logiciels légitimes sans avoir besoin de demandes d’alias, en tirant parti de noms non réservés mais prévisibles.

La troisième méthode d’attaque consiste à enregistrer des packages snap malveillants pour des packages APT légitimes afin que l’utilitaire « command-not-found » suggère les deux.

Aqua Nautilus affirme que 26 % des commandes peuvent être exploitées de cette manière, car de nombreux éditeurs de logiciels légitimes n’ont pas revendiqué l’alias de package snap correspondant à leur projet, laissant ainsi aux attaquants une marge d’exploitation.

Les analystes de la sécurité affirment que le volume d’exploitation des problèmes ci-dessus est actuellement inconnu, mais au moins deux cas ont été révélés (1, 2).

Certaines mesures qui peuvent être prises pour atténuer les risques incluent que les utilisateurs vérifient l’authenticité des packages qu’ils sont sur le point d’installer, que les développeurs Snap détenant un alias enregistrent des noms similaires à ceux de leurs applications et que les responsables de packages APT enregistrent le nom Snap associé à leur application. commandes.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *