CVE-2022-26134 : injection OGNL dans Confluence, vérifier et corriger
Dernière mise à jour:
Une injection OGNL dans Confluence Server et Data Center permet à quiconque atteint le site d'y exécuter du code, sans se connecter : l'attaquant place une expression OGNL dans le chemin de l'URL, comme dans /${…}/, et Confluence l'évalue.
Elle a été exploitée comme zero-day avant qu'Atlassian ne publie son bulletin le 2 juin 2022, et la CISA l'a ajoutée au KEV le jour même. Confluence Cloud n'est pas concerné.
En bref
- CVE
- CVE-2022-26134
- Logiciel
- Atlassian Confluence Server et Data Center
- Versions concernées
- À partir de 1.3.0, toute version antérieure à la version corrigée de sa branche
- Corrigé dans
- 7.4.17, 7.13.7, 7.14.3, 7.15.2, 7.16.4, 7.17.4, 7.18.1
- Score CVSS
- 9.8 Critique (NVD, CVSS 3.1) ·
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CISA Known Exploited Vulnerabilities
- Oui, ajoutée le 2 juin 2022
- Publiée par le NVD
- 3 juin 2022
- Correctif virtuel InfraFence
vp-cve-2022-26134(ModSecurity id 9920005)
Ce qui est concerné
Toutes les versions de Confluence Server et Data Center à partir de 1.3.0 antérieures à la version corrigée de leur branche : 7.4.17, 7.13.7, 7.14.3, 7.15.2, 7.16.4, 7.17.4 et 7.18.1. Les versions qui n'étaient plus prises en charge à l'époque n'ont reçu aucun correctif : elles doivent passer à une branche prise en charge.
Vérifier si un serveur est vulnérable
Confluence affiche sa version dans le pied de chaque page et sous Administration › General Configuration › System Information. Comparez-la avec les versions corrigées ci-dessus.
Les tentatives portent ${ dans le chemin, souvent encodé en %24%7B. Cherchez dans les journaux d'accès du proxy placé devant Confluence, et dans les journaux d'accès de Confluence lui-même, dans son dossier logs :
sudo grep -rhiE '%24%7B|\$\{' --include='*access*' --exclude='*.gz' /var/log/apache2 /var/log/httpd 2>/dev/null | tail -20Corriger
- Passez à une version corrigée, de préférence la dernière version Long Term Support d'une branche prise en charge, en suivant le guide de mise à niveau d'Atlassian (sauvegardez d'abord la base de données et le dossier home).
- Si vous ne pouvez pas mettre à niveau tout de suite, Atlassian a publié un contournement temporaire qui remplace les fichiers jar
xwork(etwebworkpour les versions plus anciennes) : suivez les étapes pour votre version dans le bulletin lié ci-dessous, sur chaque nœud d'un cluster. - Tant que l'une des deux n'est pas faite, gardez l'instance hors d'internet : la CISA a demandé aux administrations de bloquer le trafic vers et depuis les instances non corrigées.
Attention: Un serveur qui était joignable avant le correctif peut déjà être compromis : cherchez des processus inconnus et des web shells dans les dossiers de Confluence, et vérifiez les journaux à partir de fin mai 2022.
Comment InfraFence la bloque pendant que vous mettez à jour
Le correctif virtuel pour CVE-2022-26134 est une règle ModSecurity sur le chemin décodé de la requête : il bloque tout chemin qui contient ${. Les URL de Confluence n'utilisent pas cette séquence dans le chemin ; la query string n'est pas vérifiée.
Remarque: Il ne protège Confluence que lorsque les requêtes passent par Apache avec ModSecurity sur le même serveur, en reverse proxy. Un accès direct au port de Confluence le contourne : fermez ce port à internet.
Comment le correctif est appliqué
- L'agent note quels ports SSH et quels sites répondent.
- Il écrit la règle (identifiant ModSecurity 9920005) entre ses propres marqueurs dans son fichier ModSecurity, lance
apachectl configtestet recharge Apache en douceur. Un test en échec remet le fichier précédent en place. - Il vérifie que SSH et les sites répondent toujours, et retire le correctif sinon.
- Il vérifie que ModSecurity bloque réellement avec la règle, au moyen d'une requête de sonde locale inoffensive. Un ModSecurity en
DetectionOnlyse contente de journaliser : le correctif est alors retiré et signalé comme inefficace, jamais comme appliqué.
Chaque requête bloquée par le correctif est signalée avec CVE-2022-26134 (agent 1.0.37 ou ultérieur) : vous voyez les tentatives dans l'activité du serveur et sur la page Exploitation du tableau de bord, et vous savez ainsi que la vulnérabilité est tentée contre vous.
Attention: Un correctif virtuel bloque la forme connue de l'attaque sur les requêtes qui passent par Apache sur ce serveur. Il ne remplace pas la mise à jour : installez la version corrigée, puis retirez le correctif depuis Activité avec Annuler si vous n'en avez plus besoin.
Les correctifs virtuels nécessitent Apache avec ModSecurity, le réglage Autoriser les modifications de la configuration du serveur web, et aucun panneau d'hébergement ni outil de gestion de configuration aux commandes du serveur web ; ils font partie du plan Pro et d'AutoMode. Une personne les applique depuis l'analyse IA, ou AutoMode le fait. Voir Correctifs virtuels.
Sources
Les faits de cette page viennent de ces sources ; consultez-les pour les mises à jour.
Essayez gratuitement sur 1 serveur
Starter est gratuit pour un serveur, avec la protection complète et le blocage automatique. Sans carte bancaire.
Installez l'agent en root, avec votre jeton à la place de <TOKEN> :
curl -fsSL https://github.com/infrafence/infrafence-agent/releases/latest/download/install.sh | sudo bash -s -- --token <TOKEN>Le jeton se crée dans le tableau de bord, dans Serveurs › Ajouter un serveur.
