Shellshock

CVE-2014-6271 - CVE-2014-7169 - CERTFR-2014-ALE-006

Vulnérabilité critique permettant l'exécution de code malveillant sur les systèmes Linux, Mac OS X, découverte par Stéphane Chazelas.
Score de criticité CVSS : 10/10.

Le correctif complet contre cette vulnérabilité est disponible. Mettez à jour vos systèmes en suivant nos instructions.

Systèmes vulnérables

Une grande partie des systèmes Unix, Linux, BSD, et Mac OS X utilisant Bash comme interpréteur de commandes.

Suis-je vulnérable ?

1ère vérification : notre script (ATTENTION stade expérimental)

2ème vérification : test interne

Vous pouvez également taper le code suivant dans votre console Bash :

x='() { :;}; echo vulnerable' bash -c "echo ceci est un test"

Si vous voyez "vulnerable" s'afficher, vous êtes touché par la vulnérabilité, et DEVEZ mettre à jour votre système :

Si vous voyez ce résultat, votre serveur est protégé
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
ceci est un test
Si vous voyez ce résultat, votre serveur est vulnérable
vulnerable
ceci est un test

Comment mettre à jour mon système et me protéger ?

Mettez à jour votre version de Bash via le code suivant :

Ubuntu/Debian
sudo apt-get update;
sudo apt-get install bash
Red Hat / CentOS / Amazon Linux
sudo yum update bash
ArchLinux
pacman -Syu
Mac OS X (en attente d'un patch officiel Apple)
brew update;
brew install bash

ou

sudo port selfupdate;
sudo port upgrade bash

Les mises à jour disponibles vous couvrent totalement contre ces vulnérabilités. Nous vous encourageons vivement à appliquer ces correctifs.


L'Agence Nationale de la Sécurité des Systèmes d'Informations recommande également de filtrer les caractères () { via le mod_security d'Apache.

Que permet cette faille ?

Cette faille permet d'exécuter du code malveillant et à distance sur votre ordinateur, permettant à un pirate de potentiellement prendre le contrôle de votre machine.

Comment fonctionne cette faille ?

Bash, ou Bourne-Again Shell, correspond au programme qui lit et exécute les commandes que vous saisissez dans la console. Bash et votre système d'exploitation conservent un ensemble de variables dites d'environnement, qui décrivent le contexte dans lequel vous évoluez : où se trouvent les programmes que vous pouvez utiliser, votre session, etc. Grâce à cette faille, un pirate peut exploiter ces variables d'environnement pour exécuter du code malveillant.

Vecteurs d'attaques

Pour le moment, la faille est avant tout utilisée sur des serveurs utilisant CGI (Common Gateway Interface), via des entêtes HTTP piégés.
En effet, ces entêtes HTTP sont mappés par CGI et permettent d'exécuter le script Bash malveillant sur le serveur distant.

Autres sources d'informations techniques

Article de TroyHunt très détaillé sur le sujet (en anglais).

Liste de vecteurs d'attaque (en anglais).

Besoin d'une assistance ?

La société CYBERWATCH met à votre disposition ses consultants au 01 85 08 69 79 ou à contact@cyberwatch.fr