Spring - CVE-2026-47884

Date de publication :

Il s'agit d'une vulnérabilité de limitation insuffisante de chemin d'accès au sein du composant XsltView de Spring MVC.

Spring Framework est un framework open source de développement d'applications Java, employé pour la construction d'applications d'entreprise, de services web et d'architectures orientées composants. Il fournit notamment le module Spring MVC destiné à la conception d'applications web basées sur le patron modèle-vue-contrôleur.

Le défaut survient lorsqu'une application expose un mapping générique « / »** aboutissant au rendu d'une vue, dans un contexte où le nom de la vue n'est pas explicitement spécifié par le code applicatif. Dans ce cas, la valeur destinée à déterminer la vue à afficher peut être dérivée directement du chemin de la requête fournie par l'utilisateur, sans contrôle suffisant. XsltView interprète ensuite cette valeur comme un chemin vers une feuille de style XSLT à charger, ce qui permet de rediriger ce chargement vers une ressource arbitraire, y compris une ressource accessible via le réseau.

Elle permet une falsification de requête côté serveur et, selon le contexte d'exécution, l'exécution de code arbitraire à distance sur le serveur applicatif.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Non

Risques

Exécution de code arbitraire (à distance)

Exploitation

La vulnérabilité exploitée est du type
CWE-22 : Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

Détails sur l'exploitation
•   Vecteur d'attaque : Réseau
•   Complexité de l'attaque : Faible
•   Privilèges nécessaires pour réaliser l'attaque : Aucun
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : Oui

Preuve de concept
Actuellement, aucune preuve de concept n'est disponible en sources ouvertes.

Systèmes ou composants affectés

•   Spring Framework, branche 7.0, versions 7.0.0 à 7.0.8
•   Spring Framework, branche 6.2, versions 6.2.0 à 6.2.19
•   Spring Framework, branche 6.1, versions 6.1.0 à 6.1.28
•   Spring Framework, branche 6.0, versions 6.0.0 à 6.0.30
•   Spring Framework, branche 5.3, versions 5.3.0 à 5.3.49
•   Spring Framework, branche 5.2, versions 5.2.25.RELEASE et antérieures (branche en fin de vie, hors support communautaire)

Solutions ou recommandations

•   Branche 7.0 : version 7.0.9 et supérieures (disponible en version open source)
•   Branche 7.0 (correctif alternatif réservé au support Enterprise) : version 7.0.8.1 et supérieures
•   Branche 6.2 (fin de support communautaire, correctif réservé au support Enterprise) : version 6.2.20 et supérieures
•   Branche 6.1 (fin de support communautaire, correctif réservé au support Enterprise) : version 6.1.29 et supérieures
•   Branche 6.0 (fin de support communautaire, correctif réservé au support Enterprise) : version 6.0.31 et supérieures
•   Branche 5.3 (fin de support communautaire, correctif réservé au support Enterprise) : version 5.3.50 et supérieures
•   Branche 5.2 (fin de support communautaire, correctif réservé au support Enterprise) : version 5.2.26 et supérieures