Analyse en attenteCVE-2026-44295

CVE-2026-44295: Code Injection in protobuf.js

Plateforme

nodejs

Composant

protobufjs

Corrigé dans

2.0.2

La vulnérabilité CVE-2026-44295 affecte la bibliothèque protobuf.js et son add-on en ligne de commande, protobufjs-cli. Elle permet une injection de code JavaScript via la génération statique de code à partir de schémas ou de descripteurs JSON malveillants. Les versions concernées sont 2.0.0 et supérieures, jusqu'à la version 2.0.2. La vulnérabilité a été corrigée dans la version 2.0.2 et a été publiée le 13 mai 2026.

Impact et Scénarios d'Attaque

Un attaquant capable d'exploiter cette vulnérabilité peut injecter du code JavaScript arbitraire dans l'application qui utilise protobuf.js. Cela pourrait permettre de compromettre l'application, de voler des données sensibles, ou même de prendre le contrôle du système. L'injection se produit lors de la génération de code JavaScript statique à partir d'un schéma protobuf malveillant. Les noms de namespace, d'enum, de service ou les noms complets dérivés peuvent être écrits dans la sortie générée sans une validation adéquate, permettant ainsi l'exécution de code non autorisé. Le risque est particulièrement élevé dans les environnements où protobuf.js est utilisé pour traiter des données provenant de sources non fiables.

Contexte d'Exploitation

La vulnérabilité CVE-2026-44295 n'est pas encore répertoriée sur KEV (Kernel Exploit Vulnerability Database) ni sur EPSS (Exploit Prediction Scoring System). La probabilité d'exploitation est considérée comme faible à modérée, en raison de la nécessité d'un schéma protobuf malveillant spécifiquement conçu. Aucun POC (Proof of Concept) public n'est actuellement connu. La vulnérabilité a été publiée le 13 mai 2026 par le NVD (National Vulnerability Database) et CISA (Cybersecurity and Infrastructure Security Agency).

Renseignement sur les Menaces

Statut de l'Exploit

Preuve de ConceptInconnu
CISA KEVNO
Exposition InternetÉlevée

CISA SSVC

Exploitationnone
Automatisableno
Impact Techniquetotal

Vecteur CVSS

RENSEIGNEMENT SUR LES MENACES· CVSS 3.1CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N8.7HIGHAttack VectorNetworkComment l'attaquant atteint la cibleAttack ComplexityLowConditions requises pour exploiterPrivileges RequiredLowNiveau d'authentification requisUser InteractionRequiredSi une action de la victime est requiseScopeChangedImpact au-delà du composant affectéConfidentialityHighRisque d'exposition de données sensiblesIntegrityHighRisque de modification non autorisée de donnéesAvailabilityNoneRisque d'interruption de servicenextguardhq.com · Score de base CVSS v3.1
Que signifient ces métriques?
Attack Vector
Réseau — exploitable à distance via internet. Aucun accès physique ou local requis.
Attack Complexity
Faible — aucune condition spéciale requise. Exploitable de manière fiable.
Privileges Required
Faible — tout compte utilisateur valide est suffisant.
User Interaction
Requise — la victime doit ouvrir un fichier, cliquer sur un lien ou visiter une page.
Scope
Modifié — l'attaque peut pivoter au-delà du composant vulnérable.
Confidentiality
Élevé — perte totale de confidentialité. L'attaquant peut lire toutes les données.
Integrity
Élevé — l'attaquant peut écrire, modifier ou supprimer toutes les données.
Availability
Aucun — aucun impact sur la disponibilité.

Logiciel Affecté

Composantprotobufjs
Fournisseurprotobufjs
Version minimale2.0.0
Version maximale>= 2.0.0, < 2.0.2
Corrigé dans2.0.2

Classification de Faiblesse (CWE)

Chronologie

  1. Réservé
  2. Publiée

Mitigation et Contournements

La mitigation principale consiste à mettre à jour protobuf.js vers la version 2.0.2 ou supérieure. Si la mise à jour n'est pas immédiatement possible, il est crucial de valider et de désinfecter tous les schémas protobuf avant de les utiliser pour la génération de code. Envisagez d'utiliser un WAF (Web Application Firewall) pour bloquer les requêtes contenant des schémas protobuf potentiellement malveillants. Bien qu'il n'existe pas de règles WAF spécifiques pour cette vulnérabilité, des règles générales de validation d'entrée peuvent aider à atténuer le risque. Vérifiez après la mise à jour que la génération de code statique ne produit pas de code JavaScript non désiré en utilisant des schémas de test contrôlés.

Comment corrigertraduction en cours…

Actualice la biblioteca protobuf.js a la versión 2.0.2 o superior, o a la versión 1.2.1 o superior si está utilizando una versión anterior a 2.0.0. Esto solucionará la vulnerabilidad de inyección de código al sanear correctamente los nombres de los esquemas.

Questions fréquentes

What is CVE-2026-44295 — Code Injection in protobuf.js?

CVE-2026-44295 est une vulnérabilité de code injection dans la bibliothèque protobuf.js, permettant l'exécution de code JavaScript malveillant via des schémas protobuf non sécurisés. La sévérité est évaluée à HIGH (8.7) selon CVSS.

Am I affected by CVE-2026-44295 in protobuf.js?

Vous êtes affecté si vous utilisez protobuf.js dans les versions 2.0.0–>= 2.0.0, < 2.0.2. Vérifiez votre version actuelle avec npm list protobuf.js.

How do I fix CVE-2026-44295 in protobuf.js?

La solution est de mettre à jour protobuf.js vers la version 2.0.2 ou supérieure. Si la mise à jour n'est pas possible, validez et désinfectez les schémas protobuf.

Is CVE-2026-44295 being actively exploited?

À ce jour, aucune exploitation active n'est connue publiquement, mais la probabilité d'exploitation est considérée comme faible à modérée.

Where can I find the official protobuf.js advisory for CVE-2026-44295?

Consultez le site web de protobuf.js et le NVD (National Vulnerability Database) pour les informations officielles : [https://nvd.nist.gov/vuln/detail/CVE-2026-44295](https://nvd.nist.gov/vuln/detail/CVE-2026-44295)

Ton projet est-il affecté ?

Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.

en directfree scan

Essayez maintenant — sans compte

scanZone.subtitle

Scan manuelSlack/email alertsContinuous monitoringWhite-label reports

Glissez-déposez votre fichier de dépendances

composer.lock, package-lock.json, requirements.txt, Gemfile.lock, pubspec.lock, Dockerfile...