CVE-2026-47835 (CVSS 8.6) : injection SQL dans le filtrage des métadonnées du vector store Elasticsearch de Spring AI 1.0.x/1.1.x. Le CERT-FR publie CERTFR-2026-AVI-0751 le 15 juin 2026 — patch immédiat vers 1.0.9+/1.1.8+.
En bref
- CVE-2026-47835 (CVSS 8.6) : injection SQL dans le filtrage des métadonnées du vector store Elasticsearch de Spring AI — contournement de l'isolation des données entre utilisateurs/tenants dans les architectures RAG
- Versions affectées : Spring AI 1.0.x avant 1.0.9 et 1.1.x avant 1.1.8
- Action urgente : mettre à jour vers Spring AI 1.0.9+ ou 1.1.8+ ; auditer les applications RAG et d'IA générative construites sur Spring AI avec Elasticsearch comme vector store
Les faits
Le 15 juin 2026, le CERT-FR a publié l'avis CERTFR-2026-AVI-0751 signalant une vulnérabilité importante dans Spring AI, le framework Java officiel de l'écosystème Spring (VMware/Broadcom) pour l'intégration de l'intelligence artificielle dans les applications d'entreprise. CVE-2026-47835 est une vulnérabilité d'injection SQL (SQLi) de type CWE-943 (Improper Neutralization of Special Elements in Data Query Logic) affectant le composant de filtrage des métadonnées des vector stores dans l'implémentation Elasticsearch. Son score CVSSv3.1 est de 8.6 selon le vecteur AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L, ce qui la classe en vulnérabilité de sévérité élevée avec un impact systémique sur la confidentialité des données d'IA.
Spring AI est le framework officiel Spring pour la construction d'applications d'intelligence artificielle en Java : il fournit des abstractions pour interagir avec des modèles de langage (LLM) via des APIs standardisées, gérer des pipelines de génération augmentée par récupération (RAG), traiter des vecteurs d'embeddings et orchestrer des chaînes d'agents IA. Son adoption a connu une croissance exponentielle depuis 2024, devenant le standard de facto pour les développements IA en environnement Java d'entreprise. Les vector stores — bases de données spécialisées dans le stockage et la recherche par similarité de vecteurs d'embeddings — constituent le composant central des architectures RAG, permettant aux applications IA de retrouver des documents contextuellement pertinents pour enrichir les réponses des LLMs.
La root cause de CVE-2026-47835 réside dans l'absence de neutralisation correcte des caractères spéciaux dans les paramètres de filtre de métadonnées du composant ElasticsearchVectorStore de Spring AI. Lorsqu'une application utilise Spring AI pour interroger un index Elasticsearch de vecteurs avec des filtres de métadonnées — par exemple, pour restreindre la recherche vectorielle aux documents appartenant à un utilisateur ou tenant spécifique — les valeurs de ces paramètres ne sont pas correctement assainies avant leur intégration dans la requête Elasticsearch DSL (Domain Specific Language). Un attaquant capable de contrôler les valeurs des paramètres de filtre peut injecter des métadonnées malveillantes qui modifient la logique de la requête Elasticsearch, contournant les restrictions de filtrage et accédant à des données appartenant à d'autres utilisateurs ou partitions du vector store.
Cette vulnérabilité est particulièrement préoccupante dans le contexte des architectures RAG multi-tenant. Dans un système RAG typique, les embeddings de documents confidentiels — contrats clients, données médicales, propriété intellectuelle, informations financières — sont indexés dans le vector store Elasticsearch avec des métadonnées d'appartenance (user_id, tenant_id, project_id) servant à segmenter les données entre différents utilisateurs ou clients d'une application SaaS. CVE-2026-47835 permet à un attaquant de contourner cette segmentation en forgeant des paramètres de filtre malveillants, accédant aux embeddings et aux chunks de texte associés d'autres utilisateurs. Dans un système RAG connecté à un LLM, l'attaquant peut ensuite obtenir une synthèse des informations confidentielles d'autres clients de l'application IA via le modèle de langage.
Le vecteur CVSS AV:N confirme l'exploitabilité réseau sans accès physique. Le sous-score PR:N (aucun privilège d'infrastructure requis) indique que l'attaquant n'a pas besoin de privilèges système — bien qu'en pratique, il doive disposer d'un compte utilisateur de l'application (ce qui est précisément le scénario d'un attaquant inscrit à une plateforme SaaS IA multi-tenant). Le scope S:C (Changed) reflète que l'impact dépasse le composant vulnérable : les données d'autres tenants dans le même cluster Elasticsearch sont exposées, touchant des parties du système non directement contrôlées par l'attaquant.
Les versions affectées de Spring AI sont les branches 1.0.x avant 1.0.9 et 1.1.x avant 1.1.8. Spring AI 1.0 (première version stable du framework) a été publiée en 2025 et constitue la base de la majorité des déploiements Spring AI en production. Spring AI 1.1.x représente la branche de développement actuelle adoptée par les nouvelles implémentations. Les correctifs sont intégrés dans Spring AI 1.0.9 et 1.1.8, publiés les 12 et 13 juin 2026 respectivement. La correction consiste en l'assainissement des caractères spéciaux dans les paramètres de filtre Elasticsearch avant leur intégration dans les requêtes DSL, et en l'ajout d'une validation stricte des expressions de filtre contre un schéma défini. D'après l'advisory Spring AI Security 2026-06-12, seule l'implémentation ElasticsearchVectorStore est concernée — les autres vector stores Spring AI (Pinecone, Chroma, Weaviate, Qdrant, pgVector, Redis, Milvus, OpenSearch) utilisent des mécanismes de filtrage différents et ne partagent pas cette root cause.
La divulgation de CVE-2026-47835 illustre une tendance émergente en sécurité applicative : la convergence entre les vulnérabilités classiques de type injection et les nouvelles architectures IA. Le projet OWASP Top 10 for LLM Applications, dans sa révision 2025, identifie les failles de contrôle d'accès dans les systèmes RAG comme une menace prioritaire pour les applications IA d'entreprise sous l'entrée "LLM10 : Excessive Agency" et "LLM02 : Insecure Output Handling". CVE-2026-47835 représente une concrétisation de ces risques théoriques : une vulnérabilité d'injection classique (SQLi/query injection) dans un composant IA expose des données confidentielles de multiples parties prenantes via le mécanisme de récupération RAG. Les chercheurs en sécurité IA anticipent d'autres vulnérabilités similaires dans les frameworks d'intégration IA (LangChain4j, Semantic Kernel, LlamaIndex) à mesure que ces technologies mûrissent et font l'objet d'audits de sécurité approfondis.
Selon l'avis CERTFR-2026-AVI-0751, l'impact principal de CVE-2026-47835 porte sur la contournement des politiques de sécurité et la divulgation d'informations confidentielles. Aucune exploitation active n'a été confirmée à la date de publication du bulletin CERT-FR. Toutefois, la nature de la faille — exploitable par tout utilisateur applicatif pouvant contrôler les paramètres de filtre de recherche vectorielle — la rend accessible sans compétence technique avancée. Des outils de fuzzing d'API courants peuvent découvrir et exploiter ce type d'injection en interrogeant les endpoints de recherche vectorielle de l'application avec des métadonnées de filtre contenant des caractères spéciaux Elasticsearch (guillemets, wildcards, opérateurs booléens).
Impact et exposition
Les organisations utilisant Spring AI avec Elasticsearch comme vector store dans des applications multi-tenant ou multi-utilisateurs sont directement exposées. Les plateformes SaaS IA, les chatbots d'entreprise avec RAG, les assistants documentaires, et les moteurs de recherche sémantique construits sur Spring AI + Elasticsearch sont les cibles prioritaires. L'exploitation permet à un utilisateur de l'application d'accéder aux données vectorielles d'autres utilisateurs ou tenants, violant l'isolation des données et potentiellement les obligations RGPD et NIS2 en matière de confidentialité.
Dans les architectures RAG traitant des données sensibles — dossiers médicaux, documents juridiques confidentiels, données financières, propriété intellectuelle — l'impact peut être considérable. La violation de l'isolation tenant-to-tenant dans un système RAG multi-tenant est équivalente à une fuite de données inter-clients, avec les conséquences légales (notifications RGPD sous 72h à la CNIL), réglementaires (NIS2, secteurs financier et santé) et réputationnelles correspondantes. Pour les organisations opérant sous NIS2 ou dans des secteurs régulés (santé, finance), CVE-2026-47835 crée une obligation de notification si des données personnelles ont pu être exposées.
La surface d'exposition est d'autant plus large que Spring AI est adopté dans des contextes cloud-native où les applications sont exposées directement sur Internet. Les APIs de recherche vectorielle utilisées par les interfaces conversationnelles (chatbots, assistants) sont par nature accessibles à de nombreux utilisateurs, augmentant mécaniquement le risque d'exploitation opportuniste par un utilisateur malveillant au sein d'une plateforme SaaS.
Recommandations immédiates
- Mettre à jour Spring AI vers la version 1.0.9 ou supérieure (branche 1.0.x) ou vers 1.1.8 ou supérieure (branche 1.1.x) — Spring AI Security Advisory 2026-06-12
- Vérifier que toutes les dépendances spring-ai-elasticsearch-store dans les projets Maven/Gradle utilisent la version corrigée : mvn dependency:tree | grep spring-ai-elasticsearch
- Auditer les journaux d'accès Elasticsearch pour détecter des requêtes avec des patterns de filtrage inhabituels (caractères spéciaux dans les champs de métadonnées) susceptibles d'indiquer une tentative d'exploitation
- Implémenter des contrôles d'accès additionnels au niveau Elasticsearch (index-level security, field-level security) en couche de défense en profondeur, indépendamment du filtrage applicatif Spring AI
- Effectuer un audit de l'isolation des données dans les vector stores : vérifier que les filtres de métadonnées ne constituent pas le seul mécanisme de contrôle d'accès aux données vectorielles, et envisager une architecture avec des index Elasticsearch séparés par tenant pour une isolation forte
⚠️ Urgence
CVE-2026-47835 (CVSS 8.6) compromet l'isolation des données entre utilisateurs et tenants dans les vector stores Elasticsearch de Spring AI. Toute application RAG multi-tenant ou multi-utilisateurs basée sur Spring AI avec Elasticsearch est potentiellement exposée à une violation de confidentialité des données. La mise à jour vers 1.0.9+ ou 1.1.8+ est impérative, en particulier pour les applications traitant des données personnelles soumises au RGPD ou à des réglementations sectorielles.
Comment savoir si je suis vulnérable ?
Vérifiez la présence de la dépendance spring-ai-elasticsearch-store dans votre pom.xml avec la commande mvn dependency:tree | grep spring-ai-elasticsearch. Si la version est inférieure à 1.0.9 (branche 1.0.x) ou à 1.1.8 (branche 1.1.x), vous êtes vulnérable à CVE-2026-47835. Pour confirmer l'exposition, vérifiez que votre application utilise des filtres de métadonnées sur le vector store Elasticsearch (présence de FilterExpressionConverter ou de filtres dans les appels à ElasticsearchVectorStore.similaritySearch()). Si votre application est multi-tenant et s'appuie sur ces filtres pour l'isolation des données entre utilisateurs, la vulnérabilité est directement exploitable. Examinez vos journaux Elasticsearch sur les 30 derniers jours pour identifier des requêtes avec des caractères spéciaux dans les champs de métadonnées.
Vos applications d'IA sont-elles sécurisées ?
Ayi NEDJIMI réalise des audits de sécurité spécialisés pour les applications d'intelligence artificielle, les architectures RAG et les pipelines LLM en environnement d'entreprise.
Demander un audit IAÀ propos de l'auteur
Ayi NEDJIMI
Auditeur Senior Cybersécurité & Consultant IA
Expert Judiciaire — Cour d'Appel de Paris
Habilitation Confidentiel Défense
[email protected]
Ayi NEDJIMI est un vétéran de la cybersécurité avec plus de 25 ans d'expérience sur des missions critiques. Ancien développeur Microsoft à Redmond sur le module GINA (Windows NT4) et co-auteur de la version française du guide de sécurité Windows NT4 pour la NSA.
À la tête d'Ayi NEDJIMI Consultants, il réalise des audits Lead Auditor ISO 42001 et ISO 27001, des pentests d'infrastructures critiques, du forensics et des missions de conformité NIS2 / AI Act.
Conférencier international (Europe & US), il a formé plus de 10 000 professionnels.
Domaines d'expertise
Ressources & Outils de l'auteur
Testez vos connaissances
Mini-quiz de certification lié à cet article — propulsé par CertifExpress
Articles connexes
CVE-2026-40976 : Spring Boot bypass auth CVSS 9.1
CVE-2026-40976 (CVSS 9.1) expose tous les endpoints Spring Boot 4.0.0-4.0.5 sans authentification. Le CERT-FR publie CERTFR-2026-AVI-0759 le 16 juin 2026 : mise à jour immédiate vers 4.0.6+ ou 3.4.17+ impérative.
CVE-2026-10825 : RCE Moxa NPort ICS, CERTFR alerte
CVE-2026-10825 permet une exécution de code à distance non authentifiée sur les convertisseurs série-Ethernet Moxa NPort. Le CERT-FR publie l'avis CERTFR-2026-AVI-0760 le 16 juin 2026 : patch immédiat requis pour les environnements ICS/SCADA.
Oracle CPU juin 2026 : CVSS 10.0 Fusion Middleware
Le Critical Patch Update Oracle de juin 2026 corrige plus de 300 vulnérabilités dont des failles CVSS 10.0 dans Oracle Fusion Middleware et CVSS 9.9 dans Oracle E-Business Suite et REST Data Services (CVE-2026-46775, CVE-2026-46839), plusieurs exploitables sans authentification à distance.
Un projet cybersécurité ? Parlons-en.
Pentest, conformité NIS 2, ISO 27001, audit IA, RSSI externalisé… nos experts répondent sous 24h pour évaluer votre besoin et vous proposer un accompagnement sur mesure.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire