CVE-2026-49869 (CVSS 10.0) : RCE non authentifié dans Kestra OSS via un bypass d'authentification dans l'AuthenticationFilter. Un attaquant peut exécuter des commandes arbitraires comme root. PoC public disponible, KEV CISA.
En bref
- CVE-2026-49869 (CVSS 10.0) : contournement d'authentification dans Kestra OSS via un suffix match défaillant dans l'AuthenticationFilter, menant à un RCE non authentifié via exécution de workflows arbitraires.
- Systèmes affectés : Kestra OSS toutes versions antérieures à 1.0.45 et 1.3.21, avec les plugins d'exécution de scripts activés par défaut (plugin-script-shell, plugin-script-python, etc.).
- Action urgente : mettre à jour vers Kestra 1.0.45 ou 1.3.21 — inscription au KEV CISA le 2 septembre 2026, PoC public disponible, exploitation active confirmée.
Les faits
Kestra est une plateforme d'orchestration de workflows open-source, positionnée comme un orchestrateur cloud-native orienté data engineering et automatisation d'infrastructure. Largement déployée dans des environnements de data science, de MLOps et d'automatisation DevOps, Kestra OSS dispose d'une surface d'attaque particulièrement large en raison de ses capacités d'exécution de code arbitraire (shell scripts, Python, etc.) intégrées par défaut via ses plugins de scripting.
CVE-2026-49869 réside dans le composant AuthenticationFilter de Kestra OSS. La vulnérabilité est de type CWE-287 (Improper Authentication) et CWE-184 (Incomplete List of Disallowed Inputs). L'AuthenticationFilter est le composant chargé de vérifier que les requêtes entrantes sont authentifiées avant d'accéder aux endpoints protégés de l'API Kestra. Pour des raisons de compatibilité, un endpoint public de configuration (/configs) est whitelisté — il doit rester accessible sans authentification pour permettre aux clients de récupérer la configuration de base.
La faille technique réside dans la méthode de vérification du chemin : le filtre utilise request.getPath().endsWith("/configs") pour identifier cet endpoint public. Cette vérification basée sur un suffixe plutôt qu'une correspondance exacte constitue une erreur de logique de sécurité classique. Tout endpoint API dont le chemin termine par /configs est ainsi considéré comme public et passe le filtre d'authentification sans vérification. Un attaquant peut construire des requêtes dont le chemin termine par /configs pour accéder à n'importe quel endpoint normalement protégé.
L'impact de ce bypass d'authentification est directement amplifié par l'architecture de Kestra. La plateforme inclut par défaut un ensemble de plugins d'exécution de scripts : plugin-script-shell (exécution de commandes shell), plugin-script-python (exécution de code Python), plugin-script-node (exécution de JavaScript Node.js), entre autres. Ces plugins permettent à des workflows Kestra légitimes d'exécuter des commandes sur le worker Kestra. Un attaquant non authentifié exploitant CVE-2026-49869 peut créer et déclencher l'exécution de workflows arbitraires contenant des tâches de script malveillantes, aboutissant à une exécution de code arbitraire en tant que root dans le conteneur Kestra worker.
La sévérité maximale (CVSS 10.0, vecteur AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H) est justifiée par plusieurs facteurs : aucune authentification requise, aucune interaction utilisateur nécessaire, complexité d'attaque minimale, et impact complet sur la confidentialité, l'intégrité et la disponibilité. Le scope Changed (S:C) indique que l'exploitation peut impacter des ressources au-delà du composant vulnérable lui-même — ce qui est cohérent avec la capacité d'exécuter des commandes sortant du périmètre du conteneur Kestra vers d'autres systèmes accessibles.
La découverte a été initialement signalée via le système GitHub Security Advisory de kestra-io (référence GHSA-5vc5-wxxq-3fjx). Un dépôt GitHub de PoC (proof-of-concept) a été publié par le chercheur Ap0dexMe0, confirmant la reproductibilité de l'exploit par des acteurs tiers. La disponibilité d'un PoC public accélère significativement la fenêtre d'exploitation effective par des acteurs moins sophistiqués. TheHackerWire et RedPacket Security ont relayé l'analyse technique en détail.
La CISA a inclus CVE-2026-49869 dans son KEV Catalog le 2 septembre 2026 aux côtés de six autres vulnérabilités, signalant une exploitation confirmée dans des environnements réels. Kestra, bien que moins répandu que des orchestrateurs comme Apache Airflow ou Prefect, est utilisé dans des pipelines de traitement de données sensibles, ce qui rend tout RCE particulièrement dangereux en termes d'exfiltration de données et de compromission de processus métier critiques.
Les versions corrigées sont Kestra 1.0.45 (branche LTS 1.0.x) et 1.3.21 (branche stable 1.3.x). Le correctif remplace la vérification par suffixe (endsWith) par une correspondance de chemin exacte, fermant le vecteur d'exploitation. Les instances Kestra déployées dans des environnements cloud (Kubernetes, ECS, etc.) avec l'API accessible depuis Internet sont les plus exposées et doivent être prioritairement traitées.
Impact et exposition
Les déploiements Kestra OSS en self-hosted avec l'API exposée sur le réseau (typiquement port 8080) sont directement vulnérables. Les environnements de data engineering et MLOps utilisant Kestra pour orchestrer des pipelines de traitement de données sensibles (données clients, données financières, modèles IA propriétaires) sont particulièrement à risque : un attaquant peut exfiltrer des données traitées par les workflows en injectant des tâches d'exfiltration arbitraires.
Le RCE en tant que root dans le conteneur Kestra worker ouvre la voie à des attaques de type container escape si l'environnement de déploiement présente des misconfigurations (mount du socket Docker, capabilities Linux excessives, namespace sharing). Dans un déploiement Kubernetes sans Pod Security Standards stricts, cela peut conduire à une compromission du nœud et potentiellement du cluster complet.
Les pipelines d'automatisation d'infrastructure utilisant Kestra pour déployer des ressources cloud (via Terraform, Pulumi, scripts AWS CLI) présentent un risque de compromission de l'infrastructure cloud complète si les credentials cloud sont accessibles depuis le worker Kestra. Ce type de déploiement est courant dans les équipes DevOps utilisant Kestra comme orchestrateur d'Infrastructure as Code.
Recommandations immédiates
- Mettre à jour vers Kestra 1.0.45 (branche 1.0.x) ou 1.3.21 (branche 1.3.x) — GitHub Security Advisory GHSA-5vc5-wxxq-3fjx
- Si la mise à jour est impossible : bloquer l'accès externe à l'API Kestra (port 8080) via firewall ou réseau privé ; n'exposer l'interface Kestra que sur des réseaux internes de confiance
- Auditer les logs d'exécution de workflows Kestra pour identifier des workflows créés par des sources inconnues ou non autorisées
- Vérifier les logs d'accès au endpoint
/configset aux chemins contenant ce suffixe pour détecter des tentatives d'exploitation antérieures au patch - Durcir la sécurité des conteneurs Kestra worker : pas de privileged mode, PodSecurityContext strict, limiter les capabilities Linux
⚠️ PoC public disponible — CVSS 10.0
CVE-2026-49869 dispose d'un PoC public et est inscrit au KEV CISA. CVSS 10.0 avec complexité d'attaque minimale. Toute instance Kestra OSS non patchée exposée sur le réseau est à considérer comme potentiellement compromise.
Comment savoir si je suis vulnérable ?
Vérifiez votre version Kestra : curl -s http://[kestra-host]:8080/api/v1/configs | jq .version — cet endpoint est accessible sans authentification même sur les versions vulnérables. Si la version est inférieure à 1.0.45 ou 1.3.21 selon votre branche de déploiement, vous êtes vulnérable. Vérifiez également si les plugins plugin-script-shell ou plugin-script-python sont installés dans le dossier plugins Kestra — leur présence confirme la possibilité de RCE immédiat.
Votre infrastructure est-elle exposée ?
Ayi NEDJIMI réalise des audits ciblés pour sécuriser vos pipelines d'orchestration et d'automatisation cloud.
Demander un auditÀ propos de l'auteur
Ayi NEDJIMI
Auditeur Senior Cybersécurité & Consultant IA
Expert Judiciaire — Cour d'Appel de Paris
Habilitation Confidentiel Défense
ayi@ayinedjimi-consultants.fr
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-76581 : WPMU DEV WordPress admin bypass CVSS 9.8
CVE-2026-76581 affecte le plugin WPMU DEV Dashboard (350 000 sites WordPress) via une confusion HMAC SSO. Un attaquant non authentifié peut prendre le contrôle d'un compte administrateur. Mettre à jour vers la version 5.0.2.
CVE-2026-65816 : Azure Arc élévation privilèges CVSS 10.0
CVE-2026-65816 et CVE-2026-69555 : deux vulnérabilités CVSS 10.0 dans Azure Arc permettant l'élévation de privilèges non authentifiée. Microsoft a déployé des correctifs cloud début septembre 2026 — aucune action client requise.
CVE-2026-85046 : Chrome V8 zero-day exploité, 6e 0-day 2026
CVE-2026-85046, une faille type confusion dans le moteur V8 de Chrome (CVSS 8.8), est activement exploitée dans la nature. Google a publié un correctif en urgence le 3 septembre 2026 — 6e zero-day Chrome de l'année.
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 (1)
Laisser un commentaire