Nouvel exploit dans Tomcat

Une preuve de concept (PoC) exploitant une vulnérabilité de déni de service (DoS) dans Apache Tomcat a récemment été publiée, suscitant une attention particulière dans le monde de la cybersécurité. Cette vulnérabilité, identifiée sous le nom de CVE-2025-31650, affecte les versions 9.0.76 à 9.0.102, 10.1.10 à 10.1.39, et 11.0.0-M2 à 11.0.5 de Tomcat. Elle permet à un attaquant non authentifié de lancer des attaques par déni de service en exploitant des en-têtes de priorité malformés dans l’implémentation HTTP/2 de Tomcat.

Détails de la vulnérabilité

La vulnérabilité CVE-2025-31650 est due à une fuite de mémoire dans l’implémentation HTTP/2 de Tomcat. Cette faille permet à un attaquant d’envoyer des requêtes malveillantes avec des en-têtes de priorité incorrects, provoquant ainsi une consommation excessive de mémoire et un plantage du serveur. Les attaques par déni de service sont particulièrement redoutées car elles peuvent rendre un service indisponible pour les utilisateurs légitimes, entraînant des perturbations majeures pour les entreprises et les organisations dépendantes de ces services.

Exploitation et impact

Un exploit PoC en Python a été rendu public, utilisant des requêtes asynchrones pour maximiser l’efficacité de l’attaque. Voici un extrait du code :

async def send_invalid_priority_request(self, host, port, num_requests, task_id):
    async with httpx.AsyncClient(http2=True) as client:
        for _ in range(num_requests):
            headers = {
                "priority": random.choice(self.invalid_priorities),
                "user-agent": f"TomcatKiller-{task_id}-{random.randint(1,1e6)}"
            }
            await client.get(f"https://{host}:{port}/", headers=headers)

Ce code montre comment un attaquant peut envoyer un grand nombre de requêtes avec des en-têtes de priorité malformés, provoquant ainsi une surcharge du serveur et un déni de service.

Mesures de mitigation

Pour se protéger contre cette vulnérabilité, il est fortement recommandé de mettre à jour Apache Tomcat vers les versions corrigées. Les versions corrigées sont les suivantes :

  • Tomcat 9.0.103 et ultérieures
  • Tomcat 10.1.40 et ultérieures
  • Tomcat 11.0.6 et ultérieures

En plus de la mise à jour, il est conseillé de surveiller les journaux d’accès et d’erreur pour détecter toute activité suspecte. Les administrateurs système doivent également envisager de limiter l’accès aux ports HTTP/2 et de configurer des règles de pare-feu pour bloquer les requêtes malveillantes.

Conclusion

La publication de cet exploit PoC pour la vulnérabilité CVE-2025-31650 dans Apache Tomcat souligne l’importance de maintenir les systèmes à jour et de surveiller activement les menaces potentielles. Les attaques par déni de service peuvent avoir des conséquences graves, et il est crucial de prendre des mesures proactives pour se protéger contre de telles vulnérabilités. En mettant à jour les versions de Tomcat et en surveillant les activités suspectes, les organisations peuvent réduire considérablement les risques associés à cette faille.

Cyberfishement 🐡