Plateforme
nodejs
Composant
happy-dom
Corrigé dans
15.10.1
20.8.8
CVE-2026-33943 est une vulnérabilité d'injection de code affectant happy-dom, permettant à un attaquant d'exécuter du code à distance (RCE) en injectant du code JavaScript arbitraire. Cette faille se situe dans ECMAScriptModuleCompiler et exploite une interpolation non sécurisée. Les versions affectées sont antérieures à la version 20.8.8, qui corrige cette vulnérabilité.
La vulnérabilité CVE-2026-33943 dans happy-dom représente un risque important d'exécution de code à distance (RCE). Le compilateur de modules ECMAScript ne désinfecte pas correctement le contenu injecté dans les déclarations export { } des scripts de modules ES traités par happy-dom. Cela permet à un attaquant d'injecter des expressions JavaScript arbitraires qui sont exécutées directement pendant le processus de compilation. L'incapacité d'éliminer les backticks par le filtre de guillemets permet l'utilisation de littéraux de gabarit, facilitant ainsi l'évasion des mesures de sécurité existantes. Une exploitation réussie pourrait permettre à un attaquant de compromettre la sécurité de l'application, obtenant potentiellement un accès non autorisé à des données sensibles ou contrôlant l'exécution du système.
La vulnérabilité est exploitée en injectant du code JavaScript malveillant dans les déclarations export { } des scripts ES traités par happy-dom. L'attaquant peut contrôler le contenu de ces scripts, ce qui permet l'exécution de code arbitraire. L'absence de désinfection appropriée du contenu injecté et l'incapacité d'éliminer les backticks dans le filtre de guillemets permettent la création de charges utiles de littéraux de gabarit qui évitent la détection. Le contexte d'exploitation dépend de la façon dont happy-dom est utilisé dans l'application, mais implique généralement le traitement de scripts ES provenant de sources non fiables.
Applications and services built on Node.js that utilize the happy-dom module for DOM manipulation or testing are at risk. This includes projects using happy-dom for server-side rendering, automated testing, or simulating browser environments. Projects relying on third-party libraries that transitively depend on vulnerable versions of happy-dom are also potentially affected.
• nodejs / server:
npm list happy-dom• nodejs / server:
npm audit happy-dom• nodejs / server: Check package.json for versions prior to 20.8.8. • nodejs / server: Examine application logs for errors related to ES module compilation or JavaScript execution originating from external sources.
disclosure
Statut de l'Exploit
EPSS
0.08% (percentile 24%)
CISA SSVC
Vecteur CVSS
L'atténuation principale pour CVE-2026-33943 est de mettre à niveau vers la version 20.8.8 ou supérieure de happy-dom. Cette version inclut une correction qui résout la vulnérabilité en désinfectant correctement le contenu injecté dans les déclarations export { }. En attendant, comme mesure temporaire, évitez de traiter les scripts ES provenant de sources non fiables. De plus, examinez le code pour identifier tout usage potentiel de happy-dom qui pourrait être vulnérable et appliquez des contrôles d'entrée supplémentaires pour valider et nettoyer toutes les données fournies par l'utilisateur avant de les traiter avec happy-dom. L'application de correctifs et l'adoption de pratiques de codage sécurisées sont essentielles pour atténuer ce risque.
Actualice a la versión 20.8.8 o superior. Esta versión corrige la vulnerabilidad de inyección de código en el ECMAScriptModuleCompiler.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
Happy-dom est une implémentation JavaScript de DOM et d'objets web qui permet d'exécuter des tests de bout en bout dans Node.js sans avoir besoin d'un navigateur réel.
Si votre application utilise happy-dom et traite des scripts ES provenant de sources non fiables, vous pourriez être vulnérable à l'exécution de code à distance.
En tant que mesure temporaire, évitez de traiter les scripts ES provenant de sources non fiables et examinez votre code à la recherche de points d'entrée potentiellement vulnérables.
Actuellement, il n'existe pas d'outils spécifiques pour détecter cette vulnérabilité. L'examen manuel du code et l'application de correctifs sont les meilleures options.
Vous pouvez trouver plus d'informations sur cette vulnérabilité dans les bases de données de vulnérabilités telles que NVD (National Vulnerability Database) et dans les journaux de modifications de happy-dom.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.