Netty - CVE-2026-62243

Date de publication :

Il s'agit d'une vulnérabilité de contournement de la vérification du nom d'hôte TLS sur le chemin client utilisant le fournisseur SslProvider.OPENSSL.

Netty est une bibliothèque Java asynchrone orientée événements utilisée pour le développement d'applications réseau client-serveur, notamment des serveurs et clients HTTP, TCP et de protocoles personnalisés.

Le correctif d'une faille antérieure (CVE-2026-50010) reposait sur un mécanisme de wrapping via l'API interne Unsafe pour ajouter la vérification de nom d'hôte à un X509TrustManager non étendu. Sur Java 25 et versions ultérieures, l'API Unsafe n'est plus disponible par défaut, ce qui fait retomber Netty sur un wrapper par défaut ne réalisant aucune vérification. Dans cette configuration, le client OpenSSL accepte tout certificat présenté par le serveur distant, sans vérifier que le nom d'hôte correspond au certificat. Un attaquant positionné sur le réseau peut ainsi présenter un certificat émis pour un domaine différent.

Elle permet à un attaquant de mener une attaque de l'homme du milieu (MITM) et d'intercepter les communications chiffrées.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Oui

Risques

Atteinte à la confidentialité des données

Exploitation

La vulnérabilité exploitée est du type
CWE-297 : Improper Validation of Certificate with Host Mismatch

Détails sur l'exploitation
•   Vecteur d'attaque : Réseau
•   Complexité de l'attaque : Faible
•   Privilèges nécessaires pour réaliser l'attaque : Aucun
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : En attente d’information

Preuve de concept
Actuellement, aucune preuve de concept n'est disponible en sources ouvertes.

Systèmes ou composants affectés

•   netty-handler versions 4.2.0.Final jusqu'à 4.2.16.Final
•   netty-handler versions 4.1.136.Final et antérieures

Contournement provisoire

•   Utiliser un X509TrustManager étendu (X509ExtendedTrustManager) plutôt qu'un trust manager non étendu, ce type n'étant pas concerné par l'absence de wrapping.
•   Utiliser SslProvider.JDK à la place de SslProvider.OPENSSL, ce dernier étant seul concerné par le contournement décrit dans l'avis.

Solutions ou recommandations

•   netty-handler version 4.2.17.Final et supérieures
•   netty-handler version 4.1.137.Final et supérieures