CVE-2026-19553
SSLContext.wrap_bio() : validation manquante du paramètre server_hostname
- Publié
- 30 sept. 2026
- Mise à jour
- 30 sept. 2026
- Attribution de CNA
- PSF
- Preuve observée
- 2 oct. 2026
CVSS primaire
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XRésumé
ssl.SSLContext.wrap_bio() n'exigeait pas que l'argument server_hostname soit différent de None si ssl.SSLContext.check_hostname était défini. En raison d'une vérification de paramètre manquante dans SSLObject, si l'argument server_hostname n'est pas fourni, la vérification du nom d'hôte est silencieusement ignorée. Ce défaut pourrait conduire à des programmes où la vérification du nom d'hôte du certificat *semblait* réussir avec SSLContext.check_hostname = True et où aucune ValueError n'était levée en raison d'une mauvaise configuration. Si le programme passe une valeur server_hostname qui n'est ni une chaîne vide ni None à l'une de ces API, alors la vérification du nom d'hôte du certificat se déroule comme prévu et le programme n'est pas affecté par cette vulnérabilité. Atténuer cette vulnérabilité ne nécessite pas de mettre à jour Python ni d'appliquer le correctif. Pour atténuer, passez une valeur server_hostname valide, non-None et non vide à SSLContext.wrap_bio(), asyncio.create_connection() ou asyncio.loop.start_tls() et la vérification du nom d'hôte du certificat se déroulera comme prévu. La mise à niveau vers la dernière version de Python ou l'application du correctif ne fait que changer le comportement, passant d'un contournement silencieux de la vérification du nom d'hôte à la levée d'une ValueError, de manière similaire à SSLContext.wrap_socket(), lorsque server_hostname n'est pas fourni.
Sources
Lab de preuve de concept reproduisant CVE-2026-19553, où CPython ssl.SSLContext.wrap_bio() ignore silencieusement la vérification du nom d'hôte TLS lorsque server_hostname est None.
Utilisation responsable
Utilisez les informations de vulnérabilité uniquement sur les systèmes que vous possédez ou que vous êtes autorisé à tester. Kitploit renvoie aux métadonnées de la recherche publique et ne stocke pas de code d'exploitation ni de charges utiles malveillantes.