Publicité

UNE grave problème de sécurité avec le shell Bash - un composant majeur de la plupart des systèmes d'exploitation de type UNIX - a été découvert, avec des implications importantes pour la sécurité informatique dans le monde entier.

Le problème est présent dans toutes les versions du langage de script Bash jusqu'à la version 4.3, qui affecte la majorité des machines Linux et l'intégralité des ordinateurs exécutant OS X. et peut voir un attaquant exploitant ce problème afin de lancer son propre code.

Vous voulez savoir comment cela fonctionne et comment vous protéger? Lisez la suite pour plus d'informations.

Qu'est-ce que Bash?

Bash (pour Bourne Again Shell) est l'interpréteur de ligne de commande par défaut utilisé sur la plupart des distributions Linux et BSD, en plus d'OS X. Il est utilisé comme méthode de lancement de programmes, utilisant des utilitaires système et interagissant avec le système d'exploitation sous-jacent en lançant des commandes.

De plus, Bash (et la plupart des shells Unix) autorise le scriptage des fonctions UNIX dans de petits scripts. Similairement à la plupart des langages de programmation - tels que Python, JavaScript

instagram viewer
et CoffeeScript CoffeeScript est JavaScript sans les maux de têteJe n'ai jamais autant aimé écrire JavaScript. Depuis le jour où j'ai écrit ma première ligne en l'utilisant, j'ai toujours ressenti que tout ce que j'écris dedans finit toujours par ressembler à un Jackson ... Lire la suite - Bash prend en charge les fonctionnalités communes à la plupart des langages de programmation, telles que les fonctions, les variables et la portée.

shellshock-bash

Bash est presque omniprésent, de nombreuses personnes utilisant le terme «Bash» pour faire référence à toutes les interfaces de ligne de commande, qu'elles utilisent ou non le shell Bash. Et si vous avez déjà installé WordPress ou Ghost via la ligne de commande Vous vous êtes inscrit à l'hébergement Web SSH uniquement? Ne vous inquiétez pas - installez facilement n'importe quel logiciel WebVous ne connaissez pas la première chose à propos du fonctionnement de Linux via sa puissante ligne de commande? Ne vous inquiétez plus. Lire la suite , ou tunnelé votre trafic Web via SSH Comment tunneliser le trafic Web avec SSH Secure Shell Lire la suite , vous avez probablement utilisé Bash.

Il y en a partout. Ce qui rend cette vulnérabilité d'autant plus inquiétante.

Disséquer l'attaque

La vulnérabilité - découverte par un chercheur français en sécurité Stéphane Chazleas - a provoqué une grande panique chez les utilisateurs de Linux et de Mac dans le monde, et a attiré l'attention de la presse technologique. Et pour une bonne raison également, car Shellshock pourrait potentiellement voir des attaquants accéder à des systèmes privilégiés et exécuter leur propre code malveillant. C'est dégueulasse.

Mais comment ça fonctionne? Au niveau le plus bas possible, il exploite Variables d'environnement travail. Ceux-ci sont utilisés à la fois par des systèmes de type UNIX et Windows Quelles sont les variables d'environnement et comment puis-je les utiliser? [Les fenêtres]De temps en temps, j'apprends une petite astuce qui me fait penser "eh bien, si je savais qu'il y a un an, cela m'aurait fait gagner des heures". Je me souviens très bien d'avoir appris à ... Lire la suite pour stocker les valeurs nécessaires au bon fonctionnement de l'ordinateur. Celles-ci sont disponibles globalement sur l'ensemble du système et peuvent soit stocker une seule valeur - comme l'emplacement d'un dossier ou un numéro - ou une fonction.

shellshock-env-vars

Les fonctions sont un concept que l'on retrouve dans le développement de logiciels. Mais que font ils? En termes simples, ils regroupent un ensemble d'instructions (représentées par des lignes de code), qui peuvent ensuite être exécutées par un autre programme ou un utilisateur.

Le problème avec l'interpréteur Bash réside dans la façon dont il gère les fonctions de stockage en tant que variables d'environnement. Dans Bash, le code trouvé dans les fonctions est stocké entre deux accolades. Cependant, si un attaquant laisse du code Bash en dehors de l'accolade, il sera alors exécuté par le système. Cela laisse le système largement ouvert pour une famille d'attaques appelées attaques par injection de code.

Les chercheurs ont déjà trouvé des vecteurs d'attaque potentiels en exploitant la façon dont des logiciels tels que Serveur Web Apache Comment configurer un serveur Web Apache en 3 étapes facilesQuelle que soit la raison, vous voudrez peut-être à un moment donné lancer un serveur Web. Que vous souhaitiez vous donner un accès à distance à certaines pages ou services, vous voulez avoir une communauté ... Lire la suite et commun Utilitaires UNIX tels que WGET Maîtriser Wget et apprendre quelques astuces de téléchargementParfois, il ne suffit tout simplement pas d'enregistrer un site Web localement à partir de votre navigateur. Parfois, vous avez besoin d'un peu plus de puissance. Pour cela, il existe un petit outil de ligne de commande bien connu appelé Wget. Wget c'est ... Lire la suite interagir avec le shell et utiliser des variables d'environnement.

Ce bogue bash est mauvais ( https://t.co/60kPlziiVv ) Obtenez un shell inversé sur un site Web vulnérable http://t.co/7JDCvZVU3S par @ortegaalfredo

- Chris Williams (@diodesign) 24 septembre 2014

CVE-2014-6271: wget -U "() {test;}; / usr / bin / touch / tmp / VULNERABLE" myserver / cgi-bin / test

- Hernan Ochoa (@hernano) 24 septembre 2014

Comment testez-vous cela?

Curieux de voir si votre système est vulnérable? Il est facile de le découvrir. Ouvrez simplement un terminal et tapez:

env x = '() {:;}; echo vulnérable 'bash -c "echo this is a test”

Si votre système est vulnérable, il affichera alors:

vulnérable c'est un test

Alors qu'un système non affecté produira:

env x = '() {:;}; echo vulnérable 'bash -c "echo this is a test" bash: avertissement: x: ignorer la tentative de définition de la fonction bash: erreur lors de l'importation de la définition de la fonction pour `x' ceci est un test

Comment le corrigez-vous?

Au moment de la publication, le bogue - qui a été découvert le 24 septembre 2014 - aurait dû être corrigé et corrigé. Il vous suffit de mettre à jour votre système. Alors que Ubuntu et Ubuntu utilisent Dash comme shell principal, Bash est toujours utilisé pour certaines fonctionnalités du système. Par conséquent, vous seriez bien avisé de le mettre à jour. Pour ce faire, tapez:

mise à jour sudo apt-get. sudo apt-get upgrade

Sur Fedora et les autres variantes de Red Hat, tapez:

mise à jour sudo yum

Apple n'a pas encore publié de correctif de sécurité pour cela, mais s'ils le font, ils le publieront via l'App Store. Assurez-vous de vérifier régulièrement les mises à jour de sécurité.

shellshock-update

Chromebooks - qui utilisent Linux comme base et peuvent exécuter la plupart des distributions sans trop de bruit Comment installer Linux sur un ChromebookAvez-vous besoin de Skype sur votre Chromebook? Vous manquez de ne pas avoir accès aux jeux via Steam? Souhaitez-vous utiliser VLC Media Player? Commencez ensuite à utiliser Linux sur votre Chromebook. Lire la suite - utilisez Bash pour certaines fonctions du système et Dash comme shell principal. Google devrait mettre à jour en temps voulu.

Que faire si votre distro n'a pas encore corrigé Bash

Si votre distribution n'a pas encore publié de correctif pour Bash, vous pouvez envisager de modifier les distributions ou d'installer un autre shell.

Je recommande aux débutants de vérifier Coquille de poisson. Cela vient avec un certain nombre de fonctionnalités qui ne sont pas actuellement disponibles dans Bash et le rendent encore plus agréable à travailler avec Linux. Ceux-ci incluent des suggestions automatiques, des couleurs VGA vibrantes et la possibilité de le configurer à partir d'une interface Web.

Fellow auteur MakeUseOf Andrew Bolster vous recommande également de vérifier zSH, qui vient avec une intégration étroite avec le système de contrôle de version Git, ainsi que la saisie semi-automatique.

@matthewhughes zsh, car meilleure autocomplete et git integration

- Andrew Bolster (@Bolster) 25 septembre 2014

La vulnérabilité Linux la plus effrayante à ce jour?

Shellshock a déjà été armé. Dans un jour de la vulnérabilité divulgué au monde, il avait déjà été utilisé dans la nature pour compromettre les systèmes. Plus troublant, ce ne sont pas seulement les utilisateurs à domicile et les entreprises qui sont vulnérables. Les experts en sécurité prédisent que le bogue mettra également en danger les systèmes militaires et gouvernementaux. C'est presque aussi cauchemardesque que Heartbleed.

Holy Cow, il existe de nombreux sites .mil et .gov qui appartiendront à CVE-2014-6271.

- Kenn White (@kennwhite) 24 septembre 2014

Donc s'il vous plait. Mettez à jour vos systèmes, d'accord? Faites-moi savoir comment vous vous en sortez et comment vous pensez de cette pièce. La boîte de commentaires est ci-dessous.

Crédit photo:zanaca (IMG_3772.JPG)

Matthew Hughes est un développeur de logiciels et écrivain de Liverpool, en Angleterre. Il est rarement trouvé sans une tasse de café noir fort dans sa main et adore absolument son Macbook Pro et son appareil photo. Vous pouvez lire son blog sur http://www.matthewhughes.co.uk et suivez-le sur twitter à @matthewhughes.