Plateforme
nodejs
Composant
pbkdf2
Corrigé dans
1.0.1
3.1.3
La vulnérabilité CVE-2025-6547 concerne la bibliothèque pbkdf2 dans les versions antérieures à 3.1.3 de Node.js (0.12 à 2.x). Elle permet une manipulation silencieuse des entrées de type Uint8Array, ce qui peut compromettre la sécurité des applications qui utilisent cette bibliothèque pour le hachage de mots de passe ou d'autres données sensibles. Bien que Node.js 0.12 et les versions 2.x soient considérées comme historiques, elles sont toujours supportées, ce qui rend cette vulnérabilité pertinente. Une version corrigée (3.1.3) est disponible.
La vulnérabilité CVE-2025-6547 affecte les versions historiques mais toujours prises en charge de Node.js (0.12 - 2.x) au sein de la bibliothèque pbkdf2. Plus précisément, la fonction pbkdf2 ignore silencieusement les entrées de type Uint8Array. Bien que la bibliothèque prétende prendre en charge Node.js à partir de la version 0.12, ce comportement inattendu peut compromettre la sécurité des mots de passe et d'autres données sensibles. Le CVSS a été noté 9.5, indiquant un risque critique. Cela signifie qu'un attaquant pourrait potentiellement dériver des clés à partir de mots de passe faibles ou prévisibles sans être détecté, car la validation d'entrée est omise. L'absence de validation appropriée permet la manipulation de l'entrée, ce qui peut entraîner une génération de clés incorrecte ou une exposition d'informations. La mise à niveau vers une version corrigée est cruciale pour atténuer ce risque.
Un attaquant pourrait exploiter cette vulnérabilité s'il a le contrôle sur l'entrée fournie à la fonction pbkdf2 dans les versions vulnérables de Node.js. Cela pourrait se produire dans des applications web qui acceptent les mots de passe des utilisateurs ou des systèmes qui utilisent pbkdf2 pour le stockage sécurisé des clés. L'attaque serait silencieuse, car la bibliothèque ne générerait ni erreurs ni avertissements lorsque l'entrée Uint8Array est ignorée. Cela permettrait à l'attaquant de manipuler la clé dérivée sans être détecté. La vulnérabilité est particulièrement préoccupante car les anciennes versions de Node.js sont encore utilisées dans de nombreux systèmes, ce qui en fait des cibles attrayantes. L'absence de validation appropriée de l'entrée est une cause fréquente de vulnérabilités de sécurité, et ce cas ne fait pas exception.
Applications and services relying on Node.js versions 0.12 through 2.x are at significant risk. This includes legacy applications, systems with outdated dependencies, and environments where Node.js has not been regularly updated. Shared hosting environments using older Node.js versions are particularly vulnerable.
• nodejs / server:
node -v | grep -q '0.12\.\|1\.\|2\.' && echo "Potentially vulnerable Node.js version detected!" || echo "Node.js version is safe."• nodejs / server:
npm list pbkdf2 | grep -q '>=3.1.3' || echo "pbkdf2 version is potentially vulnerable!"• nodejs / server:
find /usr/local/lib/node_modules /opt/node/lib/node_modules -name "pbkdf2" -type d -print0 | xargs -0 grep -l 'toBuffer' disclosure
Statut de l'Exploit
EPSS
0.03% (percentile 9%)
CISA SSVC
La solution recommandée est de mettre à niveau vers Node.js version 3.1.3 ou supérieure. Cette version corrige la vulnérabilité en gérant correctement les entrées Uint8Array. Si la mise à niveau de Node.js n'est pas immédiatement possible, envisagez de remplacer la bibliothèque pbkdf2 par une alternative qui implémente une validation d'entrée plus robuste. De plus, examinez le code utilisant pbkdf2 pour vous assurer que des données Uint8Array ne sont pas involontairement passées comme mots de passe. L'implémentation d'une validation supplémentaire dans le code de l'application pour garantir que les mots de passe sont passés sous forme de chaînes ou de tampons peut fournir une couche de protection supplémentaire. La surveillance des journaux de l'application à la recherche d'erreurs ou de comportements inhabituels liés à pbkdf2 peut également aider à détecter les tentatives d'exploitation potentielles.
Actualice la dependencia pbkdf2 a una versión posterior a 3.1.2. Esto solucionará la vulnerabilidad de validación de entrada incorrecta. Consulte el advisory GHSA-v62p-rq8g-8h59 para obtener más detalles.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
Non, elle n'affecte que les versions 0.12 à 2.x.
C'est une bibliothèque Node.js utilisée pour dériver en toute sécurité des clés à partir de mots de passe.
Vérifiez la version de Node.js que vous utilisez. Si elle est inférieure à 3.1.3, elle est vulnérable.
Envisagez de remplacer pbkdf2 par une alternative ou de mettre en œuvre une validation supplémentaire dans votre code.
Cela indique un risque critique, ce qui signifie que la vulnérabilité est facilement exploitable et peut avoir un impact important.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.