En bref

  • CVE-2026-91012 (CVSS 9.8 Critical) : path traversal dans Apache Karaf permettant à un utilisateur authentifié de niveau "manager" d'écrire des fichiers arbitraires hors du répertoire karaf.etc
  • Systèmes affectés : Apache Karaf toutes versions antérieures à 4.4.12
  • Action urgente : mettre à jour vers Apache Karaf 4.4.12 immédiatement

Les faits

Le 3 octobre 2026, la vulnérabilité CVE-2026-91012 a été publiée, affectant Apache Karaf, le conteneur de services OSGi open-source largement utilisé dans les middlewares d'entreprise, plateformes d'intégration et applications Java distribuées. Avec un score CVSS 3.1 de 9.8 (Critical), cette faille de path traversal dans le mécanisme de mise à jour des configurations représente un risque d'élévation de privilèges particulièrement sévère. L'analyse de securityonline.info et de linuxsecurity.com, publiée le 3 octobre 2026, a classé CVE-2026-91012 parmi les 46 vulnérabilités critiques du jour.

La faille réside dans la méthode ConfigRepositoryImpl#update(pid, properties), qui est l'implémentation sous-jacente du MBean "config" et des commandes shell config:* dans la console Karaf. Cette méthode calcule le chemin du fichier de configuration à écrire à partir de paramètres fournis par l'appelant, sans valider que le chemin résultant reste à l'intérieur du répertoire ${karaf.etc}. La racine technique du problème est double : la vérification existante ne bloque ni les chemins absolus, ni les escapes basés sur des liens symboliques. Deuxièmement, cette vérification partielle n'a jamais été appliquée aux méthodes ConfigRepositoryImpl.update() et createFactoryConfiguration().

Un utilisateur authentifié avec le rôle "manager" (niveau inférieur au rôle "admin") peut exploiter ces méthodes pour écrire du contenu contrôlé par l'attaquant dans n'importe quel fichier sur lequel le processus Karaf dispose de permissions d'écriture. Les cibles les plus dangereuses sont les fichiers de sécurité normalement réservés au rôle "admin" : etc/users.properties (comptes et mots de passe), etc/*.acl.*.cfg (listes de contrôle d'accès), et etc/org.apache.karaf.management.cfg (configuration JMX).

En écrivant dans etc/users.properties, un attaquant avec un rôle "manager" peut s'attribuer le rôle "admin", prendre le contrôle complet du conteneur Karaf, accéder à toutes les configurations, déployer des bundles OSGi malveillants, ou modifier la configuration de tous les services déployés. La prise de contrôle complète de l'application est possible sans interaction avec un administrateur légitime.

Le vecteur CVSS (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H) explique le score de 9.8. "AV:N" signifie exploitation réseau, "AC:L" complexité faible, "PR:L" seul un compte manager est requis, "UI:N" aucune interaction, et "S:C" indique que l'impact dépasse le composant initial. Apache Karaf est le runtime OSGi utilisé dans des frameworks d'intégration majeurs comme Apache ServiceMix, des déploiements d'Apache Camel, et de nombreuses plateformes d'entreprise Java. Les déploiements en production dans les secteurs bancaire, télécoms, santé et administration sont nombreux.

La divulgation est accompagnée d'un rapport détaillé publié par linuxsecurity.com le 3 octobre 2026, décrivant comment les quatre failles découvertes dans cette version permettent à des utilisateurs à faibles privilèges de prendre le contrôle total du conteneur Karaf. La mise à jour vers Apache Karaf 4.4.12 corrige CVE-2026-91012 ainsi que les trois autres vulnérabilités associées. Apache a publié l'advisory officiel via le processus standard de l'Apache Software Foundation Security team.

Aucune exploitation in-the-wild n'a été rapportée au moment de la publication, mais la facilité d'exploitation (condition d'entrée : simple compte manager, exploitation : quelques commandes console) et la criticité du score CVSS en font une cible prioritaire pour les attaquants ciblant les middlewares d'entreprise Java. La rétro-ingénierie des changements introduits dans Karaf 4.4.12 permettrait facilement de reconstruire un exploit opérationnel.

Les quatre failles publiées simultanément dans Apache Karaf montrent une surface d'attaque plus large que le seul CVE-2026-91012 : des vulnérabilités d'exécution de commandes et d'écrasement de fichiers supplémentaires ont été découvertes dans le même audit de sécurité. Toutes sont corrigées dans Karaf 4.4.12. Aucun PoC public n'est disponible au moment de la rédaction de cet article.

Impact et exposition

Une compromission du conteneur Karaf peut signifier la compromission complète de l'application métier hébergée, incluant l'accès aux données traitées par les services déployés, aux credentials configurés dans les bundles OSGi, et potentiellement aux systèmes connectés via les routes d'intégration (ESB, API gateways, bases de données). Le conteneur Karaf est souvent le cœur d'une architecture d'intégration d'entreprise.

La condition d'exploitation — un compte avec rôle "manager" — représente un vecteur réaliste dans les environnements où plusieurs équipes partagent un même déploiement Karaf. Un développeur avec des droits opérationnels limités pourrait exploiter cette faille pour s'octroyer des droits d'administration complets. Dans les architectures multi-tenant ou les PaaS internes utilisant Karaf, le risque d'escalade inter-tenant est particulièrement préoccupant.

Les instances Karaf exposant leur console web (Hawtio) ou leur interface JMX directement sur internet sont ciblables par quiconque obtient un compte manager, par brute-force, phishing ou compromission d'un compte interne. En réseau interne, la faille constitue un risque d'escalade de privilèges sérieux pour toute organisation utilisant des rôles "manager" délégués à des équipes non-admin.

Recommandations immédiates

  • Mettre à jour Apache Karaf vers la version 4.4.12 immédiatement — Apache Software Foundation Security Advisory CVE-2026-91012 (sans lien externe)
  • Si la mise à jour est impossible : restreindre l'accès aux commandes config:* et au MBean config aux seuls rôles "admin" via etc/org.apache.karaf.config.acl.cfg
  • Supprimer ou désactiver les comptes avec le rôle "manager" inutilisés ou non nécessaires
  • Auditer les fichiers etc/users.properties et etc/*.acl.*.cfg pour toute modification non autorisée récente
  • Vérifier les logs Karaf pour des appels à config:update avec des valeurs de PID contenant "../" ou des chemins absolus

⚠️ Urgence

CVE-2026-91012 (CVSS 9.8) permet une élévation de privilèges complète dans Apache Karaf via un simple path traversal. Toutes les versions antérieures à 4.4.12 sont affectées. Priorisez la mise à jour, particulièrement si des comptes avec rôle "manager" sont délégués à des équipes extérieures à l'administration.

Comment savoir si je suis vulnérable ?

Vérifiez votre version Karaf via la commande version dans la console Karaf, ou consultez le fichier etc/custom.properties (propriété karaf.version). Si la version est inférieure à 4.4.12, vous êtes vulnérable. Listez les comptes avec rôle "manager" via jaas:users dans la console Karaf pour évaluer la surface d'attaque réelle.

Votre infrastructure est-elle exposée ?

Ayi NEDJIMI réalise des audits ciblés pour identifier et corriger vos vulnérabilités.

Demander un audit