Table of Contents
La Fondation Apache (ASF) a récemment publié une mise à jour de sécurité pour corriger une vulnérabilité importante dans son logiciel de serveur Tomcat, susceptible de conduire à une exécution de code à distance (RCE) dans certaines conditions.
Détails de la vulnérabilité
Cette vulnérabilité, identifiée sous le numéro CVE-2024-56337, est considérée comme une atténuation incomplète de la faille CVE-2024-50379 (score CVSS : 9.8), une autre faille de sécurité critique déjà corrigée le 17 décembre 2024.
Les responsables du projet ont indiqué qu’« les utilisateurs exécutant Tomcat sur un système de fichiers insensible à la casse, avec l’écriture du servlet par défaut activée (paramètre d’initialisation en lecture seule défini sur une valeur non par défaut de faux), peuvent nécessiter une configuration supplémentaire pour atténuer pleinement CVE-2024-50379, selon la version de Java qu’ils utilisent avec Tomcat ».
Impact des vulnérabilités
Les deux failles sont des vulnérabilités de condition de course Time-of-check Time-of-use (TOCTOU), qui pourraient entraîner une exécution de code sur des systèmes de fichiers insensibles à la casse lorsque le servlet par défaut est activé pour l’écriture. Apache a noté dans une alerte pour CVE-2024-50379 que « la lecture et le téléchargement simultanés du même fichier sous charge peuvent contourner les vérifications de sensibilité à la casse de Tomcat et entraîner le traitement d’un fichier téléchargé comme un JSP, menant à une exécution de code à distance ».
Les versions affectées d’Apache Tomcat sont :
- Apache Tomcat 11.0.0-M1 à 11.0.1 (corrigé dans 11.0.2 ou ultérieur)
- Apache Tomcat 10.1.0-M1 à 10.1.33 (corrigé dans 10.1.34 ou ultérieur)
- Apache Tomcat 9.0.0.M1 à 9.0.97 (corrigé dans 9.0.98 ou ultérieur)
Recommandations de configuration
Les utilisateurs doivent également effectuer les modifications de configuration suivantes en fonction de la version de Java utilisée :
- Java 8 ou Java 11 – Définir explicitement la propriété système
sun.io.useCanonCaches
surfalse
(la valeur par défaut esttrue
) - Java 17 – Définir la propriété système
sun.io.useCanonCaches
surfalse
, si elle est déjà définie (la valeur par défaut estfalse
) - Java 21 et supérieur – Aucune action requise, car la propriété système a été supprimée
Reconnaissances et autres vulnérabilités
La Fondation Apache a remercié les chercheurs en sécurité Nacl, WHOAMI, Yemoli et Ruozhi pour avoir identifié et signalé ces failles. Elle a également reconnu l’équipe KnownSec 404 pour avoir signalé de manière indépendante CVE-2024-56337 avec un code de preuve de concept (PoC).
Cette divulgation survient alors que l’initiative Zero Day (ZDI) a partagé des détails sur un bogue critique dans Webmin (CVE-2024-12828, score CVSS : 9.9), permettant à des attaquants distants authentifiés d’exécuter du code arbitraire. « La faille spécifique réside dans le traitement des requêtes CGI », a déclaré la ZDI. « Le problème découle du manque de validation appropriée d’une chaîne fournie par l’utilisateur avant de l’utiliser pour exécuter un appel système. Un attaquant peut exploiter cette vulnérabilité pour exécuter du code dans le contexte de root ».