java-logo.jpg

Des spécialistes de sécurité viennent d'analyser la faille de sécurité zero-day découverte il y a quelques jours dans la JVM Oracle. Cette faille permet à un pirate d’exécuter du code malveillant à distance sur votre ordinateur depuis une applet Java référencée par une simple page Web.

Le code source de la faille après reverse-engineering est présenté par Mark Canning sur GitHub :

https://gist.github.com/4506143

La faille consiste à faire exécuter à la JVM de l'Applet, la commande suivante sans qu'elle ne se rende compte qu'elle ne possède pas les droits suffisants pour l'exécuter :

System.setSecurityManager(null);

Cette commande permet à l'applet Java de sortir de sa Sandbox et d'avoir accès à toutes les autorisations d'un processus normal. Notamment, l'autorisation d’exécuter la commande "exec()" qui va permettre à l'applet d'exécuter des commandes "shell" à distance :

Runtime.getRuntime().exec("logiciel.exe");

java security

La classe "System" ne pouvant être appelée depuis une applet, le pirate passe par un serveur JMX pour instancier un loader dynamique de classe "GeneratedClassLoader". Une fois instanciée, l'instance est utilisée pour interpréter un code pré-compilé contenu dans une chaîne de caractères et faisant référence à "System.setSecurityManager(null)" et permettant à l'applet de sortir de sa Sandbox.

CAFEBABE0000003200270A000500180A0019001A07001B0A001C001D07001E07001F0700200100063C696E69......

Une fois sortie de sa Sandbox, l'applet possède tous les droits sur la machine. Dans l'exemple détaillé sur GitHub, l'exploit exécute la calculatrice Windows. Cependant un pirate pourrait potentiellement installer un trojan sur votre ordinateur afin de pouvoir le contrôler à distance et d'avoir accès à l'ensemble de vos fichiers.

L'erreur d'Oracle a été d'oublier d'interdire l'exécution de la classe "GeneratedClassLoader" du package "org.mozilla.javascript" depuis une Applet Java.

En attendant un correctif de la part d'Oracle, je vous conseille vivement de désactiver dès maintenant le plugin Java de votre navigateur.

De nombreux portails Web ont été infectés et infectent tous les visiteurs, voici la carte d'analyse d'impacts réalisée par Kurt Baumgartner de Kaspersky.

impacts attaques java zero day

Sortez couverts !


UPDATE : Une mise à jour de la JVM Oracle vient d'être mise en ligne

Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.