26 Sep 2014

La vulnérabilité dans Bash c’est quoi ? Et pourquoi nous concerne-t-elle tous ?

Actualité

Cette semaine, une très grave faille affectant l’interpréteur en ligne de commande Bourne again shell (Bash) a été découverte et certains n’hésitent pas à comparer sa gravité à celle d‘Heartbleed. Bien que l’ampleur des dégâts soit difficile à évaluer, le mot Bash est sur toutes les lèvres. D’ailleurs, le présentateur de votre  journal télévisé local en a sûrement parlé hier soir, posté devant un écran où défilaient de mystérieux codes verts.

Vulnérabilité Bash

Mais qu’est-ce que Bash ?

Bash est une sorte de langage crypté et un programme Shell en ligne de commande développé en 1989 par le projet GNU. Il permet aux utilisateurs et aux machines d’entrer des commandes et de les exécuter au niveau du système d’exploitation. En gros, il reçoit et interprète les commandes. Si vous voulez en savoir plus, consultez l’article sur le site du  Projet GNU.

L’interpréteur en ligne de commande Bash se retrouve dans la plupart des distributions Linux, Unix ainsi que les systèmes d’exploitation OS X d’Apple, qui reprend des éléments d’Unix et de Linux. En plus de cela, Bash est aussi présent dans de très nombreux serveurs Web ainsi que dans des appareils électriques du quotidien comme les routeurs ou les modems (mais pas seulement). On le retrouve aussi sur de nombreux serveurs en réseau ainsi que sur d’autres systèmes connectés à Internet.

La vulnérabilité dans Bash a été découverte par Stephane Chazelas, un chercheur en sécurité de la société Akamai. Comme vous pouvez l’imaginer, cette vulnérabilité existe déjà depuis quelque temps, peut-être même plus de 20 ans. De la même manière que pour Heartbleed, on peut seulement espérer que Chazelas soit la première personne à découvrir la faille, mais il y a peu de chances qu’on sache un jour la vérité à ce sujet.

En quoi la vulnérabilité dans Bash peut-elle m’affecter?

Il n’a pas fallu beaucoup de temps avant que les exploits visant la vulnérabilité dans Bash apparaissent. Ces exploits permettraient à un attaquant d’attacher à distance un code malveillant via des variables d’environnement spécialement conçues. Ce code pourra être exécuté par l’interpréteur de commande lorsque le shell Bash sera lancé. En d’autres termes, après avoir réussi à lancer l’exploit, l’attaquant pourra prendre le contrôle de tous les systèmes infectés.

Pour les cybercriminels, elle est bien plus facile à exploiter qu’Heartbleed. De plus, dans le cas d’Hearbleed, un cybercriminel pouvait seulement s’emparer de données stockées, et espérer tomber sur quelque chose d’intéressant. La vulnérabilité ‘Bash’ permet de prendre le contrôle de tout le système. Donc, il y a des chances que ce soit plus dangereux.

Quand on a demandé à nos collègues de l’équipe internationale de recherche et d’analyse de Kasperky Lab si la vulnérabilité dans Bash allait dépasser Heartbleed, voici ce qu’ils nous ont répondu :

 » Et bien, pour les cybercriminels elle est bien plus facile à exploiter qu’Heartbleed. De plus, dans le cas d’Hearbleed, un cybercriminel pouvait seulement s’emparer de données stockées, et espérer tomber sur quelque chose d’intéressant. Par contre, la vulnérabilité dans Bash permet de prendre le contrôle de tout le système. Donc, il y a des chances que ce soit plus dangereux.  »

Les chercheurs de Kaspersky envisagent aussi un scénario dans lequel la vulnérabilité dans Bash pourrait être utilisée pour voler des identifiants bancaires et éventuellement de l’argent. Les pirates pourront sûrement exploiter la vulnérabilité dans Bash et voler les identifiants via votre ordinateur, mais cela implique de trouver des codes d’attaques permettant d’accéder à l’interface de commande Bash. Et ce ne sera pas si facile que ça. Une hypothèse plus probable serait que l’attaquant vise un serveur utilisé par le site de votre banque en ligne préférée et essaye de voler plusieurs comptes bancaires d’un seul coup.

 

Cette alerte lancée par l’United States Computer Emergency Readiness Team résume peut être mieux la gravité de la situation :

 » Cette vulnérabilité se classe à un niveau de dangerosité maximal, atteignant 10 sur l’échelle du CVSS et possède un indice d’exploitabilité au plus haut, ce qui signifie qu’elle peut être exploitée facilement. Cette faille permet aux attaquants de fournir des variables d’environnement spécialement conçues et contenant des commandes arbitraires qui peuvent s’exécuter sur des systèmes vulnérables. C’est particulièrement dangereux à cause de l’utilisation très répandue du shell Bash, qui peut même être utilisée par de nombreuses applications.  »

Heartbleed comme la vulnérabilité dans Bash peuvent provoquer des dégâts de grande ampleur mais contrairement au Heartbleed, la vulnérabilité dans Bash est assez simple à exploiter.

Comment me protéger ?

A part abandonner Internet pour toujours, la seule chose à faire pour vous protéger est d’installer les mises à jour conçues spécialement, dès que celles-ci seront disponibles. En ce qui concerne les systèmes d’exploitation des ordinateurs fixes ou portables, vous devrez attendre qu’un patch conçu spécialement pour votre modèle soit disponible.

Pour ce qui est des routeurs, des modems ou des autres appareils domestiques, il n’y aura pas de solution unique. Le scénario le plus probable est que les fabricants de ces appareils conçoivent des micrologiciels de mises à jour chacun de leur côté. Dans la plupart des cas, ces actualisations ne s’installeront pas seules comme celles d’un système d’exploitation traditionnel.

Comme l’ont souligné aujourd’hui les experts de l’équipe internationale de recherche et d’analyse de Kasperky Lab, étant donné la versatilité de Bash et son omniprésence dans un grand nombre de systèmes, les patchs ne seront efficaces qu’à court terme. Pour réparer de la vulnérabilité dans Bash, il faudra surement essayer et se tromper un nombre incalculable de fois. Et c’est exactement pour cette raison que bon nombre de chercheurs et de médias affirment que les premiers patchs sont  » incomplets.  »

Le deuxième problème que je souhaiterais souligner, c’est qu’on retrouve les systèmes *nix partout, et c’est la raison pour laquelle Bash est omniprésent aussi. Il y aura sans aucun doute des machines utilisant Bash et qui ne pourront pas être mises à jour. Il y aura aussi des machines utilisant Bash sans que personne ne s’en aperçoive.

Comme Robert Graham de ErrataSec l’a rapporté sur son blog,  » Le nombre de systèmes devant être patchés et qui ne le seront pas, est bien plus important qu’il ne l’était pour Heartbleed.  » Pour replacer cela dans son contexte, Graham affirme que des centaines de milliers de sites sont toujours vulnérables au OpenSSL Heartbleed, même plusieurs mois après la sortie des patchs.