veilletech.fr
13 nov. Feed du jour
#02 SÉCURITÉ Faille

Node.js : 16 failles, HTTP/2 et HTTPS fuient la mémoire

Sept failles hautes, aucune parade : seule la mise à jour compte.

Node.js 22.23.5, 24.22.3 et 26.13.1 corrigent seize failles, dont sept hautes, toutes dans le code serveur HTTP/2, HTTPS et TLS du runtime. Un client sans compte peut faire planter un serveur HTTP/2 par défaut, ou lire la mémoire d'autres connexions, clés TLS comprises dans le cas HTTPS. Aucun contournement n'est proposé, et les branches 20 et 25 ne seront pas corrigées.

2 min de lectureintermédiairevidéo 1:16
Partager
Sommaire5 sections
  1. Ce qui se passe
  2. Les sept failles hautes
  3. Les neuf autres
  4. Ce que ça change
  5. À retenir

Ce qui se passe

Le 11 novembre, Node.js a publié 22.23.5, 24.22.3 et 26.13.1. Elles corrigent 16 failles du runtime, dont 7 hautes, toutes dans le code serveur HTTP/2, HTTPS et TLS : elles concernent un processus Node qui accepte lui-même ces connexions. L'avis ne propose aucun contournement.

Les sept failles hautes

CVE Branches Effet
CVE-2026-123863 24, 26 plantage d'un serveur HTTP/2 par défaut qui répond avant la fin du corps de requête, en clair comme en TLS
CVE-2026-123866 22, 24, 26 le serveur envoie des morceaux de sa mémoire, réponses d'autres connexions comprises
CVE-2026-123864 22, 24, 26 serveur HTTPS : lecture de la mémoire d'autres connexions, clés privées TLS comprises selon le projet
CVE-2026-123865 22, 24, 26 un client fait retenir mémoire et descripteurs de fichiers à tout serveur HTTP/2 par défaut
CVE-2026-123874 24, 26 corruption mémoire avec stream.respondWithFile() ou stream.respondWithFD()
CVE-2026-126051 24, 26 plantage d'un serveur TLS qui utilise SNICallback, OCSPRequest, newSession, resumeSession ou server.addContext()
CVE-2026-123872 22, 24, 26 en renégociation TLS 1.2, un client admis pour un nom d'hôte bascule sur un autre aux règles de certificat client plus strictes

CVE-2026-123866 se déclenche par le client seul à partir de 24.22.0 et 26.9.0 ; avant, il faut que le serveur ferme un flux en cours de réponse, sur délai d'inactivité par exemple. CVE-2026-123864 suppose un handler qui appelle res.flushHeaders() avant la fin du corps, puis res.end() avec des données, et une route qui renvoie ou stocke le corps reçu ; node:http en clair n'est pas concerné.

Les neuf autres

CVE-2026-123875 (plantage à l'annulation d'un respondWithFile()), CVE-2026-123828, CVE-2026-123867, CVE-2026-123868, CVE-2026-123871, CVE-2026-123877, CVE-2026-123829, CVE-2026-123862 et CVE-2026-123873.

Ce que ça change

Cinq de ces failles, dont CVE-2026-123863 et CVE-2026-123864, ont été signalées par Chris Rohlf avec Claude et Anthropic Research.

Source : The Hacker News, en anglais. Détail dans l'avis de sécurité de Node.js et les notes de version 26.13.1.