Lexsi publie un guide pour exploiter les failles du greffon Java

Lexsi réalise un beau coup médiatique, en montrant comment il est possible d’utiliser les faiblesses du greffon Java pour prendre la main sur la machine d’un utilisateur à distance.

Lexsi est un cabinet français spécialisé dans la sécurité informatique. Il rebondit aujourd’hui sur les failles Java constatées ces dernières semaines, au travers de son blog.

Et d’expliquer comment JNA (Java Native Access), qui permet d’interagir avec la mémoire et du code natif, peut être détourné pour lancer du code à distance.

Voici l’environnement ciblé par cette démonstration :

  • utilisation d’une session graphique déportée type Citrix ou autre ;
  • l’ensemble des applicatifs installés sur la machine est à jour ;
  • un antivirus dont les définitions sont à jour est installé et actif ;
  • l’accès à internet est protégé par des équipements de type WAF, proxy HTTP authentifiant ;
  • un système de SRP (Software Restriction Policy) ne permet d’exécuter qu’une application, un navigateur internet (ainsi que ses plug-ins, à savoir Flash et Java) ;
  • ce même système ne permet l’écriture de données qu’aux seuls endroits où le navigateur a la nécessité d’écrire des informations temporaires (cookies, cache, etc.).

Voilà qui ressemble à une imprenable forteresse. Erreur !

JNA : une porte béante dans le greffon Java

En quelques lignes de code il est possible d’allouer de la mémoire, d’y placer du code, puis de l’exécuter. Le tout à distance. Si certaines fonctionnalités sont filtrées lorsque Java est utilisé en tant que greffon, ce n’est visiblement pas le cas de JNA, qui devient ici particulièrement dangereux.

Grâce au bout de code de Lexsi, un exploit metasploit peut alors être envoyé à la machine faisant fonctionner Java. Efficace et tellement simple que cela en devient un peu effrayant. On comprend mieux dans ce contexte pourquoi la plupart des experts en sécurité recommandent de purement et simplement supprimer le greffon Java des postes de travail.

Ce que nous comprenons moins par contre, c’est pourquoi Oracle ne bloque tout simplement pas JNA au sein du plug-in. La société pourrait également se rapprocher des éditeurs de navigateurs web afin d’adapter le greffon au bac à sable intégré dans certains butineurs. Ce type d’attaque deviendrait alors inopérant… sauf à exploiter une éventuelle faille du bac à sable, bien évidemment !


Voir aussi
Quiz Silicon.fr – Connaissez-vous les secrets de Java ?