Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 

De la Théorie à la pratique











Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

#ShellShock, un séisme d’une amplitude inégalée

septembre 2014 par Trend Micro

Il faut s’attendre à un séisme d’une amplitude inégalée avec la découverte de la faille Shellshock qui affecte les systèmes Unix, Linux et Mac OS X. Selon les experts Trend Micro, elle va impacter près d’un demi-milliard de serveurs web et d’objets connectés tels que les téléphones portables, routers et appareils médicaux.
Alors que la fameuse vulnérabilité HeartBleed n’impactait que la confidentialité des données, les conséquences de la vulnérabilité de la faille Shellshock seront d’autant plus fortes car l’attaque est réalisable via le réseau et permet d’exécuter du code à distance. Un cyber attaquant pourra ainsi impacter l’accessibilité, l’intégrité et la confidentialité des données.

Qu’est-ce que bash ?

Bash est à la fois un langage de programmation et ce qu’on appelle un shell. Un shell est une interface qui permet à un humain de dialoguer avec un ordinateur. (au lieu de cliquer sur des icônes et dans des fenêtres, on envoie des commandes à cette interface). Bash est très utilisé sur les serveurs Linux mais on retrouve aussi sur les serveurs Unix et BSD.

Quel est le principe de la vulnérabilité ?

Lors de l’exécution d’un programme bash, ce dernier charge des variables d’environnent. La valeur de cette variable peut être statique, mais bash autorise aussi à charger des fonctions. C’est dans le parsing de cette fonction que réside le problème. En effet un attaquant peut injecter des commandes à la fin de la fonction :

Env_Variable=’() your function ; attacker code here’

Que faut-il pour la vulnérabilité puisse être exploitée ?

Il faut que bash récupère une variable qui est défini par l’utilisateur. Cette variable peut être récupérée par exemple dans une session SSH, via un client SNMP mais il est probable que le principal vecteur d’exploitation soit le WEB.

Quel est l’impact de cette vulnérabilité ?

L’impact est extrêmement fort, car l’attaque est réalisable via le réseau et elle permet d’exécuter du code à distance. Ce qui permet à un attaquant d’impacter l’accessibilité, l’intégrité et la confidentialité des données. A titre de comparaison, la fameuse vulnérabilité HeartBleed n’impactait que la confidentialité. Et bash est très répandu…

Comment limiter les risques ?

Il convient de patcher en urgence. Mais dans un grand nombre de cas au mieux, Il faudra procéder à de s tests de non-régression qui prendront du temps à réaliser (ce qui augmentera la durée d’exposition au risque) et au pire, le système ne sera pas patchable…. Que faire donc me direz-vous ? Une fois de plus, le virtual patching va permettre de limiter les risques d’exploitation de cette vulnérabilité. Le principe du virtual patching consiste à observer ce qui se passe sur le réseau afin de repérer ce qui caractérise l’exploitation de la vulnérabilité. On peut alors bloquer la trame réseau avant que celle-ci n’atteigne la machine ciblée.




Voir les articles précédents

    

Voir les articles suivants