48 caractères pour planter les distributions Linux

Un spécialiste a découvert une commande de 48 caractères qui plante la plupart des distributions Linux. Une faille négligeable pour certains experts.

La vie d’un serveur tient finalement à peu de chose. Andrew Ayer, fondateur de SSLMate et administrateur Linux a découvert un moyen pour planter la plupart des distributions Linux. Il s’est servi d’une faille dans systemd et a utilisé une commande comprenant seulement 48 caractères : NOTIFY_SOCKET = / run / systemd / notify systemd-notify.

Systemd est un élément essentiel du processus de démarrage pour la plupart des distributions Linux. Ayer a détaillé sa méthode dans un billet de blog  intitulé « comment planter Systemd dans un tweet ». Après avoir lancé la commande mortelle, le PID 1 (processes identifier) Linux met l’appel système en pause rendant impossible le redémarrage et l’analyse de l’instabilité système. « Tout cela est causé par une commande qui est assez courte pour tenir dans un tweet », précise le spécialiste et d’ajouter, « malgré la banalité, le bug est grave, car il donne la possibilité à tout utilisateur en local d’exécuter de manière triviale une attaque par déni de service contre un composant critique du système ».

Selon Andrew Ayer, ce bug a été introduit il y a 2 ans dans systemd 209. « La commande systemd-notify envoie un message d’une longueur nulle au domaine visible Unix situé à / run / systemd / notify. PID 1 reçoit le message et échoue à comprendre qu’un message puisse avoir une longueur supérieur à 0. D’où le plantage de systemd », dissèque le spécialiste.

Une vulnérabilité négligeable ou une sonnette d’alarme

Depuis qu’Ayer a signalé la vulnérabilité, systemd a été corrigé, précise David Timothy Strauss, CTO et fondateur de Pantheon. Ce dernier a critiqué dans un blog les travaux d’Andrew Ayer, « la faille est un problème mineur de sécurité. Non seulement le problème de sécurité est classé comme faible et utilisable uniquement en local, mais la plupart des allégations d’Ayer sont fausses et trompeuses ». Ainsi, il conteste le fait que le code plante systemd. Pour lui, il s’agit plutôt d’un état général d’instabilité et systemd remplit le rôle qu’on lui a affecté. Il constitue « un des outils les plus puissants contre les menaces actuelles ».

Guerre des mots et des nuances, à laquelle Andrew Ayer a répondu en soulignant que Strauss, « surestime considérablement la valeur des fonctionnalités de systemd ». Et de compléter, « le meilleur systemd doit offrir du sandboxing sur l’ensemble d’une application. Vous pouvez démarrer un daemon en tant qu’utilisateur non administrateur avec un système de fichiers restreint et un contrôle d’accès obligatoire ». Les réseaux sociaux ont continué à débattre de cette faille et des échanges animés entre les deux spécialistes. Rich Felker, auteur de la librairie Musl, a tenté de résumer l’affaire à nos confrères de Threatpost, « la vulnérabilité est moins une menace sérieuse de sécurité qu’une sonnette d’alarme sur la « monoculture » autour de systemd ».

A lire aussi :

IoT : un serveur Linux à 5 dollars de la taille d’un timbre-poste
FairWare, un ransomware qui supprime les fichiers des serveurs Linux

 crédit photo@isak55-Shutterstock