L'entreprise de sécurité Aspect Security a identifié une faille majeure dans le framework Java Spring. Celle-ci permet l'exécution de code à distance contre les applications construites avec la plate-forme de développement Open Source. « Elle permet à des attaquants d'injecter du code », a expliqué Jeff Williams, CEO d'Aspect Security. La vulnérabilité découverte par les chercheurs de la société de sécurité se trouve dans la fonction « expression language » du code de développement du framework Spring.
Comme l'a indiqué le CEO d'Aspect Security, ses équipes ont travaillé en étroite collaboration avec la communauté Open Source qui soutient le framework Spring pour régler le problème. Mais jusqu'à présent, la vulnérabilité qui permet « l'injection de code à distance par la fonction langage d'expression » ne semble pas pouvoir être corrigée par un patch rapide. Si bien que les développeurs de logiciels dont les applications sont construites avec Spring pourraient être exposés et ils sont invités à désactiver la fonction vulnérable.
« Spring va probablement désactiver la fonction « expression language » par défaut dans la prochaine version », a déclaré Jeff Williams, mais à l'heure actuelle il faut considérer que si la vulnérabilité était exploitée par un attaquant, toute application construite avec Spring serait exposée. « C'est très dangereux », a ajouté le CEO d'Aspect Security. « Une application web pourrait être entièrement détournée par des attaquants et servir à exécuter du code malveillant sur le serveur ».
22 000 entreprises potentiellement vulnérables
On ne sait pas exactement combien d'applications développées avec Spring sont vulnérables à ce code distant capable de mener une attaque par injection de code dans la fonction « expression language ». Mais selon Aspect Security, « si l'on regarde l'activité de Sonatype, l'opérateur du référentiel Central Repository qui fournit des composants Open-Source, on peut estimer que plus de 1,3 million d'instances vulnérables du framework Spring ont été téléchargées par plus de 22 000 entreprises dans le monde ».
Même si la vulnérabilité découverte par Aspect Security n'est pas « simple à exploiter », Jeff Williams n'a aucun doute que des attaquants déterminés peuvent y arriver. Celui-ci précise également que la vulnérabilité découverte dans le code du framework Spring, et rendue publique cette semaine, n'a aucun lien avec les problèmes récemment identifiés dans Java côté navigateur.
Une faille dans Spring exploitable par les hackers
1
Réaction
Une faille majeure dans le framework Spring basé sur Java permet l'exécution de code malveillant à distance.
Newsletter LMI
Recevez notre newsletter comme plus de 50000 abonnés
Commentaire
Suivre toute l'actualité
Newsletter
Recevez notre newsletter comme plus de 50 000 professionnels de l'IT!
Je m'abonne
Je viens de découvrir votre article s'appuyant sur les découvertes de Aspect Security, qui malheureusement comporte quelques erreurs que nous souhaitons corriger.
Signaler un abusBien que la découverte de Aspect Security soit en effet récente, un correctif publié par SpringSource existe depuis longtemps. Il a été mis à disposition dès 2011, quand cette faille a été découverte pour la première fois. Dan Amadio d'Aspect Security nous a récemment fait part de la possibilité d'exécuter du code à distance et SpringSource a donc mis à jour le bulletin de sécurité (12-06-2012) avec les dernières informations d'Aspect Security. Pour autant, le palliatif exposé dans le premier rapport de sécurité reste applicable.
Ce correctif est automatiquement présent dans les versions 3.1+ du framework Spring. Ceci n'est plus un problème pour les utilisateurs de Spring qui ont pris les mesures nécessaires dès la première publication du rapport en septembre 2011.
Vous semblez passer sous silence le fait que cette faille n'affecte qu'une infime partie des versions de Spring, et qu'il suffit aux utilisateurs du framework de mettre à jour leur version (opération de maintenance, très simple). A titre d'exemple, la marche à suivre est détaillée plus bas.
La mise à jour régulière vers les dernières versions de maintenance est une procédure bien connue de tout utilisateur responsable.
La faille affecte uniquement les versions (anciennces) suivantes:
* 3.0.0 à 3.0.5 -- la mise à jour en 3.0.6 corrige le problème
* 2.5.0 à 2.5.6.SEC02 (community release) -- la mise à joour en 2.5.6.SEC03 corrige le problème
* 2.5.0 à 2.5.7.SR01 (clients SpringSource) -- la mise à jour en 2.5.7.SR02 corrige le problème
A titre indicatif, la version actuelle du framework Spring est 3.2, rendue disponible en décembre 2012.
Eric Bottard,
Developer Advocate, VMware