Rendue publique ce 24 septembre après sa découverte la semaine dernière par Stéphane Chazelas (expert Unix/Linux), la vulnérabilité CVE-2014-6271 fait frémir les experts en sécurité informatique : certains la considèrent potentiellement plus destructrice que la faille Heartbleed.
Hautement critique, elle touche l’environnement console Bash (« Bourne-again shell »), utilisé par défaut sur la plupart des systèmes de type Unix, dont Apple OS X et de nombreuses distributions Linux.
Le point faible se situe au niveau du traitement des variables d’environnement et de leur transmission à des processus fils (appelés par le shell). Bash interprète d’abord le nom et la valeur de la variable, puis analyse la fonction éventuellement définie par la chaîne « () {« . Mais il ne s’arrête pas après le point-virgule qui marque normalement la fin de cette définition de fonction : il exécute le code qui suit… y compris s’il est malveillant.
Dans la documentation technique publiée pour l’occasion, les développeurs de Bash précisent que la faille – qui touche potentiellement toute application interagissant avec le shell – est exploitable via le réseau dans de nombreuses configurations. Et l’attaquant n’a pas nécessairement besoin de disposer d’un accès au système vulnérable : il lui suffit de passer par l’un des nombreux services autorisant des tiers non authentifiés à fournir, à distance, des variables d’environnement.
Premières cibles : les serveurs Web et leurs applications qui appellent des commandes shell par HTTP ou via des scripts CGI (« Command-Gateway Interface ») en permettant à l’utilisateur d’insérer lui-même des données. Le risque est encore plus important si ces appels sont réalisés en mode super-utilisateur (root), avec les privilèges maximum.
Selon Lexsi (cabinet spécialisé dans la sécurité IT), « quelques lignes de codes suffisent » à exploiter cette faille vraisemblablement présente dans Bash « depuis au moins une vingtaine d’années ». Pour tester la vulnérabilité d’un système, il suffit d’envoyer, en local, une variable additionnée d’une commande « echo [message] » après le point-virgule. Au prochain lancement d’un processus bin/bash, la commande « echo » s’exécutera et affichera un message dans la console.
Les développeurs de Bash ont patché les versions 3.0 et 4.3 du shell. Des correctifs sont également proposés par les éditeurs des distributions CentOS, Debian, Red Hat et Ubuntu Linux. Il est recommandé aux administrateurs qui n’y ont pas encore accès de compiler eux-mêmes les sources, tout en adoptant quelques mesures de sécurité : limiter l’accès aux serveurs SSH en suspendant temporairement les connexions des non-administrateurs, désactiver les scripts CGI qui appellent le shell… Ou encore opter pour un autre interpréteur que Bash (c’est ce qu’a fait Akamai), au prix d’une syntaxe légèrement différente – par exemple, proche du langage C avec Csh.
—— A voir aussi ——
Quiz ITespresso.fr : que savez-vous des CMS open source ?
Crédit photo : isak55 – Shutterstock.com
Les attaques de phishing utilisant des QR codes frauduleux intégrés dans des documents PDF joints…
Microsoft a amorcé le déploiement de Windows 11 24H2. Passage en revue des nouvelles fonctionnalités…
L'intégration de Copilot dans la suite bureautique s'accélère. Où trouver l'assistant IA et comment l'utiliser…
Microsoft annonce une phase expérimentale pour lancer Recall sur les PC Copilot+. Elle doit commencer…
Comment réduire la taille des mises à jour de Windows 11 ? Microsoft annonce la…
Déjà doté de la sauvegarde automatique, d'un compteur de caractères et de Copilot, Bloc-notes embarque…