Node.js - CVE-2026-21710

Date de publication :

Il s'agit d'une vulnérabilité dans le traitement des en-têtes HTTP de Node.js.

Node.js est un environnement d'exécution JavaScript côté serveur, basé sur le moteur V8 de Chrome. Il est utilisé pour construire des serveurs HTTP, des API REST, des microservices et des applications temps réel. Sa présence est quasi universelle dans les architectures applicatives modernes.

Lorsqu'une requête contient un en-tête nommé __proto__, l'accès à req.headersDistinct provoque une résolution de dest["__proto__"] vers Object.prototype au lieu de undefined. La méthode .push() est alors appelée sur un objet non-tableau. L'exception TypeError résultante est synchrone, déclenchée depuis un getter, et ne peut pas être interceptée par les listeners error standard.

Elle permet à un attaquant distant non authentifié de crasher immédiatement le processus Node.js par l'envoi d'une unique requête HTTP forgée.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Oui

Risques

Déni de service (à distance)

Exploitation

La vulnérabilité exploitée est du type
CWE-1321 : Improperly Controlled Modification of Object Prototype Attributes (Prototype Pollution)

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 : Non

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

Systèmes ou composants affectés

•   Node.js versions 20.x jusqu'à 20.20.1 incluse 
•   Node.js versions 22.x jusqu'à 22.22.1 incluse 
•   Node.js versions 24.x jusqu'à 24.14.0 incluse 
•   Node.js versions 25.x jusqu'à 25.8.1 incluse

Contournement provisoire

Filtrer au niveau du WAF ou du reverse proxy toute requête HTTP contenant un en-tête nommé __proto__

Solutions ou recommandations

•   Node.js version 20.20.2 et supérieures
•   Node.js version 22.22.2 et supérieures
•   Node.js version 24.14.1 et supérieures
•   Node.js version 25.8.2 et supérieures