Plateforme
nodejs
Composant
protobufjs
Corrigé dans
6.11.3
6.11.3
La vulnérabilité CVE-2022-25878 affecte la bibliothèque protobufjs et permet une pollution de prototype. Un attaquant peut modifier les propriétés de l'objet Object.prototype. Les versions affectées sont les versions 6.10.0 à 6.10.3 et 6.11.0 à 6.11.3. La vulnérabilité est corrigée dans la version 6.11.3.
La vulnérabilité CVE-2022-25878 dans protobufjs représente un risque de pollution de prototype. Cela signifie qu'un attaquant pourrait injecter ou modifier des propriétés sur Object.prototype, impactant potentiellement tout le code JavaScript utilisant protobufjs. Les versions affectées sont celles incluant la 6.10.0 jusqu'à la 6.10.3 et incluant la 6.11.0 jusqu'à la 6.11.3. La pollution de prototype peut entraîner un comportement inattendu, des erreurs d'exécution ou même l'exécution de code malveillant si elle est exploitée avec succès. La vulnérabilité se manifeste principalement par deux voies : la manipulation d'entrées utilisateur non fiables vers les fonctions util.setProperty ou ReflectionObject.setParsedOption, et le chargement/l'analyse de fichiers .proto malveillants. La sévérité CVSS est de 7.5, indiquant un risque élevé.
Un attaquant pourrait exploiter cette vulnérabilité en envoyant des entrées malveillantes à une application utilisant protobufjs. Ces entrées pourraient être conçues pour polluer le prototype Object et modifier son comportement. Par exemple, un attaquant pourrait ajouter une nouvelle propriété au prototype Object qui écrase une fonction existante, ce qui pourrait permettre l'exécution de code arbitraire. L'exploitation est plus probable dans les applications qui traitent des données protobuf provenant de sources externes, telles que des API ou des fichiers téléchargés par l'utilisateur. La complexité de l'exploitation peut varier en fonction de l'architecture de l'application et des mesures de sécurité mises en œuvre.
Applications built using Node.js that rely on the protobufjs library for data serialization and deserialization are at risk. This includes applications that process data from untrusted sources, such as user-uploaded files or external APIs, and those that parse .proto files without proper validation.
• nodejs / server:
npm list protobufjs• nodejs / server:
npm audit protobufjs• generic web: Inspect application logs for unusual object property modifications or errors related to protobuf parsing. Look for patterns of unexpected property names being added to objects.
disclosure
Statut de l'Exploit
EPSS
0.42% (percentile 62%)
Vecteur CVSS
La solution recommandée est de mettre à niveau protobufjs à la version 6.11.4 ou supérieure. Cette version corrige la vulnérabilité de pollution de prototype. Si une mise à niveau immédiate n'est pas possible, mettez en œuvre des mesures d'atténuation telles que la validation et la désinfection rigoureuses de toutes les entrées utilisateur utilisées dans les fonctions util.setProperty et ReflectionObject.setParsedOption. De plus, soyez prudent lorsque vous chargez ou analysez des fichiers .proto provenant de sources non fiables. Examinez les dépendances du projet pour vous assurer que toutes les bibliothèques sont à jour afin d'éviter les vulnérabilités en cascade. Surveiller les journaux de l'application à la recherche de comportements anormaux peut également aider à détecter les tentatives d'exploitation.
Actualice la dependencia protobufjs a la versión 6.11.3 o superior. Esto corrige la vulnerabilidad de Prototype Pollution. Ejecute `npm install protobufjs@latest` o `yarn upgrade protobufjs` para actualizar.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
C'est une vulnérabilité qui permet de modifier le prototype des objets JavaScript, affectant toutes les instances d'objets dans l'application.
Cette version contient la correction pour CVE-2022-25878, éliminant le risque de pollution de prototype.
Mettez en œuvre la validation et la désinfection des entrées, soyez prudent avec les fichiers .proto provenant de sources non fiables et surveillez les journaux.
Vérifiez la version de protobufjs que vous utilisez. Si elle se situe entre 6.10.0 et 6.10.3 ou entre 6.11.0 et 6.11.3, elle est vulnérable.
Des outils d'analyse statique et dynamique peuvent aider à identifier les vulnérabilités de pollution de prototype dans le code.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.