Pire que Heartbleed? Découvrez ShellShock: une nouvelle menace de sécurité pour OS X et Linux

Publicité

Publicité
Publicité

Un problème de sécurité grave a été découvert avec le shell Bash - un composant majeur des deux systèmes d'exploitation de type UNIX -, 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 une majorité de machines Linux, et l'ensemble des ordinateurs exécutant OS X. et peut voir un attaquant exploitant ce problème pour lancer son propre code.

Vous êtes curieux de 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 de OS X. Il est utilisé comme méthode de lancement de programmes, d'utilitaires système et d'interaction avec le système d'exploitation sous-jacent. commandes.

De plus, Bash (et la plupart des shells Unix) permettent le script de fonctions UNIX dans de petits scripts. De même pour la plupart des langages de programmation - tels que Python, JavaScript et CoffeeScript CoffeeScript est JavaScript sans les maux de tête CoffeeScript est JavaScript sans les maux de tête Je n'ai jamais vraiment aimé écrire du JavaScript autant. Depuis le jour où j'ai écrit ma première ligne en l'utilisant, j'ai toujours ressenti que tout ce que j'écris finit toujours par ressembler à un Jackson ... Lire la suite - Bash supporte des fonctionnalités communes avec la plupart des langages de programmation, comme les fonctions, variables et portée.

shellshock-bash

Bash est presque omniprésent, de nombreuses personnes utilisant le terme «Bash» pour désigner 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 Signé pour l'hébergement Web uniquement SSH? Ne vous inquiétez pas - installez facilement n'importe quel logiciel Web signé pour l'hébergement Web SSH seulement? Ne vous inquiétez pas - installez facilement n'importe quel logiciel Web Ne savez pas la première chose à propos de l'utilisation de Linux à travers sa puissante ligne de commande? Ne vous inquiétez plus. En savoir plus, ou tunnel votre trafic Web via SSH Comment Tunnel Web Traffic avec SSH Secure Shell Comment Tunnel Web Traffic avec SSH Secure Shell Lire la suite, vous avez très 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 Stéphane Chazleas, chercheur français en sécurité, a provoqué une grande panique chez les utilisateurs Linux et Mac du monde entier, et a attiré l'attention dans la presse technologique. Et pour cause, 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 le fonctionnement des variables d'environnement. Ils sont utilisés à la fois par les systèmes UNIX et Windows. Que sont les variables d'environnement et comment puis-je les utiliser? [Windows] Quelles sont les variables d'environnement et comment puis-je les utiliser? [Windows] De temps en temps, je vais apprendre un petit truc qui me fait penser "bien, si je le savais il y a un an, ça m'aurait sauvé des heures". Je me souviens très bien d'apprendre à ... Lire la suite pour stocker les valeurs nécessaires au bon fonctionnement de l'ordinateur. Ils sont disponibles dans le monde entier dans le système et peuvent stocker une seule valeur, telle que l'emplacement d'un dossier ou un numéro, ou une fonction.

shellshock-env-vars

Les fonctions sont un concept que l'on trouve 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 manière 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 une paire d'accolades. Cependant, si un attaquant quitte un code Bash en dehors de l'accolade, il sera alors exécuté par le système. Cela laisse le système ouvert pour une famille d'attaques connues sous le nom d'attaques par injection de code.

Les chercheurs ont déjà trouvé des vecteurs d'attaque potentiels en exploitant comment un logiciel tel que le serveur web Apache Comment configurer un serveur Web Apache en 3 étapes faciles Comment configurer un serveur Web Apache en 3 étapes faciles Quelle que soit la raison, vous pouvez point veulent faire fonctionner un serveur Web. Si vous voulez vous donner un accès à distance à certaines pages ou services, vous voulez obtenir une communauté ... Lire la suite, et les utilitaires UNIX courants tels que WGET Mastering Wget & Learning Quelques astuces de téléchargement soignées Maîtriser Wget & Learning Quelques astuces de téléchargement parfois il ne suffit pas d'enregistrer un site Web localement depuis votre navigateur. Parfois, vous avez besoin d'un peu plus de puissance. Pour cela, il existe un petit outil de ligne de commande appelé Wget. Wget is ... Read More interagit avec le shell et utilise des variables d'environnement.

Ce bug 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" monserveur / cgi-bin / test

- Hernan Ochoa (@hernano) 24 septembre 2014

Comment faites-vous des tests pour cela?

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

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

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

 vulnerable this is a test 

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

 env x='() { :;}; echo vulnerable' bash -c "echo this is a test" bash: warning: x: ignoring function definition attempt bash: error importing function definition for `x' this is a test 

Comment le corrigez-vous?

Au moment de la publication, le bug - qui a été découvert le 24 septembre 2014 - aurait dû être corrigé et corrigé. Vous avez simplement besoin de mettre à jour votre système. Alors que les variantes Ubuntu et Ubuntu utilisent Dash comme shell principal, Bash est toujours utilisé pour certaines fonctionnalités du système. En conséquence, il vous est conseillé de le mettre à jour. Pour ce faire, tapez:

 sudo apt-get update sudo apt-get upgrade 

Sur Fedora et d'autres variantes de Red Hat, tapez:

 sudo yum update 

Apple n'a pas encore publié de correctif de sécurité, mais si c'est le cas, il le publiera via l'App Store. Assurez-vous de vérifier régulièrement les mises à jour de sécurité.

shellshock-mise à jour

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

Que faire si votre distribution n'a pas encore corrigé

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

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

Andrew Bolster, un autre collègue de MakeUseOf, vous recommande également de consulter zSH, qui est livré avec une intégration étroite avec le système de contrôle de version Git, ainsi que la saisie semi-automatique.

@matthewhughes zsh, parce que l'auto-complétion et l'intégration de git sont meilleures

- Andrew Bolster (@Bolster) 25 septembre 2014

La vulnérabilité de Scariest Linux encore?

Shellshock a déjà été militarisé. Une journée après que la vulnérabilité ait été divulguée au monde, elle avait déjà été utilisée dans la nature pour compromettre des systèmes. Plus inquiétant, ce ne sont pas seulement les particuliers et les entreprises qui sont vulnérables. Les experts en sécurité prédisent que le virus laissera également les systèmes militaires et gouvernementaux en danger. C'est presque aussi cauchemardesque que Heartbleed l'était.

Holy cow Il y a beaucoup de sites .mil et .gov qui vont être la propriété de 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 allez, et vos pensées à propos de cette pièce. La boîte de commentaires est ci-dessous.

Crédit photo: zanaca (IMG_3772.JPG)

In this article