Shellshock : Une vulnérabilité très critique dans Bash !
Une vulnérabilité critique et exploitable a été découverte dans le shell Linux appelé Bash. Stephane Chazelas a diffusé publiquement les détails techniques de cette vulnérabilité qui permet une exécution de code à distance en Bash, et, qui affecterait de nombreuses distributions Linux.
Référencée sous CVE-2014-6271, cette vulnérabilité affecte les versions 1.14 à 4.3 de GNU Bash. Les chercheurs en sécurité l'ont nommée "Bash Bug" ou "Shellshock". Dans la base de données NIST, cette vulnérabilité est notée 10 sur 10...
Cette vulnérabilité exploitable à distance serait vieille de 22 ans ! Elle se situe au niveau des variables d'environnement. Il suffit qu'une de vos applications installées sur votre serveur Linux, comme par exemple une interface web HTTP ou une interface CGI appelle le shell Bash, pour qu'un utilisateur puisse insérer des données et donc pirater votre serveur.
Si Bash est configuré comme étant le shell par défaut sur votre système, un attaquant peut exécuter un code malicieux sur le serveur grâce à une requête HTTP qu'il aura spécialement conçue, et, qui contiendra des paramètres d'en-tête particuliers.
Un code Proof-of-concept pour CGI-BIN concernant un reverse shell a été posté sur internet : PoC CGI-BIN
Cette vulnérabilité touche bien entendu de nombreux serveurs à travers le monde, mais pas que ! En effet, les machines sous Mac OS X et les périphériques Android embarquent également la version de Bash vulnérable.
Votre système est-il vulnérable ?
Pour déterminer si votre système Linux ou Unix est vulnérable, exécutez les commandes suivantes :
env X="() { :;} ; echo shellshock" /bin/sh -c "echo completed" env X="() { :;} ; echo shellshock" `which bash` -c "echo completed"
Si vous voyez le mot "shellshock" en retour, votre système est vulnérable !
Comment corriger mon système ?
Une nouvelle version de Bash devrait sortir très rapidement, c'est d'ailleurs le cas sur les distributions principales qui disposent d'une nouvelle version :
- Red Hat Enterprise Linux (versions 4 à 7) et Fedora
- CentOS (versions 5 à 7)
- Ubuntu 10.04 LTS, 12.04 LTS, et 14.04 LTS
- Debian
Si votre système est vulnérable, mettez à jour Bash le plus rapidement possible !