Cloudanix VulnDB

CVE-2025-6547

None

CVSS

—

EPSS

0.5%

Published

Jun 23, 2025

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

Some software may incorrectly trust forged security checks unless a vulnerable cryptography component is updated.

Chainable
Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
High
Impact
Data Tampering
Component
Library
Class
Cryptographic Weakness
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw is an improper input-validation weakness in pbkdf2 versions up to and including 3.1.2. In applications that use this library for PBKDF2-derived signing, verification, token validation, or key derivation, malformed or unexpected attacker-controlled inputs may be accepted in a way that undermines signature validation. The main technical consequence is integrity compromise: an attacker may be able to make forged or invalid cryptographic material appear valid to the consuming application. The CVSS conditions indicate exploitation is network-reachable and does not require authentication or user interaction, but it is high complexity and depends on specific application behavior or deployment conditions.

Why it matters to the business

Systems that rely on affected pbkdf2 versions for security-sensitive verification may make incorrect trust decisions, such as accepting forged tokens, signatures, or derived-key checks. This can lead to unauthorized actions, bypass of integrity controls, fraudulent transactions, or compromise of downstream systems that trust those signatures. The vulnerability is not currently listed in CISA KEV, is not known to be used in ransomware campaigns, has low EPSS, and has no listed public exploit maturity, so broad opportunistic exploitation appears less likely; however, affected cryptographic code should still be prioritized because successful exploitation can directly undermine authentication or authorization assumptions.

How an attack unfolds

An attacker first identifies an application endpoint or protocol flow where pbkdf2 is used to validate signatures, tokens, password-derived keys, challenge responses, or other integrity-sensitive values. The attacker then determines whether any PBKDF2 inputs, encoding choices, digest parameters, salts, iteration values, or signed payload fields are attacker-controllable or insufficiently normalized before verification. If the application passes those values into a vulnerable pbkdf2 version, the attacker crafts malformed inputs that trigger the improper validation behavior and cause the application to accept a forged or otherwise invalid result. When successful, the attacker can impersonate a trusted signer, bypass an integrity check, or cause downstream logic to process unauthorized data as legitimate. Exploitation is expected to be application-specific and higher effort because it depends on how the library is integrated and whether compensating validation exists around the cryptographic operation.

How to fix it

Upgrade affected pbkdf2 deployments to a fixed version. For browserify/pbkdf2, update to a release or dependency revision that includes commit e3102a8cd4830a3ac85cd0dd011cc002fdde33bb or later. For Mageia 6 kernel-linus packaging, update to 4.14.100-1.mga6 or later as provided by the distribution. Rebuild and redeploy applications that bundle pbkdf2 through npm, browserify, webpack, vendored JavaScript, container images, serverless packages, or static frontend assets. As a defense-in-depth measure, ensure applications strictly validate and canonicalize all cryptographic inputs before verification, reject unexpected algorithms or encodings, enforce fixed digest/iteration/salt policies where possible, and do not allow untrusted users to choose security-critical PBKDF2 parameters.

How to confirm the fix worked

Confirm that no runtime, build artifact, lockfile, container image, or vendored dependency includes pbkdf2 version 3.1.2 or earlier. For npm-based applications, check package-lock.json, npm-shrinkwrap.json, yarn.lock, pnpm-lock.yaml, node_modules, and software composition analysis results for pbkdf2. Verify that rebuilt artifacts no longer contain the vulnerable package and that dependency trees resolve to a fixed revision. For Mageia systems, verify the installed kernel-linus package is 4.14.100-1.mga6 or later. Functional validation should include regression tests for signature or token verification that ensure malformed encodings, unsupported algorithms, altered salts, changed iteration counts, and tampered payloads are rejected. If the application exposes cryptographic verification over an API, add negative tests that confirm invalid signatures fail after the upgrade.

Typical attack path

  1. Discover a target application or service that uses the affected pbkdf2 package or a downstream bundle containing it.
  2. Identify a security-sensitive workflow that relies on PBKDF2-derived values for signing, verification, tokens, challenge responses, or key validation.
  3. Determine whether attacker-controlled input reaches pbkdf2 parameters or verified payload material without strict validation and canonicalization.
  4. Craft malformed or edge-case inputs that exploit the improper validation behavior in the vulnerable library.
  5. Submit the forged signature, token, or derived-key material to the target service.
  6. Use the accepted forged value to bypass an integrity check, impersonate a trusted entity, or trigger unauthorized application behavior.

How to detect it

There are no reliable universal indicators of compromise for this vulnerability because exploitation would usually appear as application-specific signature or token misuse rather than a distinctive malware artifact or network signature. To assess possible prior exploitation, review logs from services that use pbkdf2 for authentication, authorization, token validation, request signing, webhook verification, license checks, or other integrity controls. Focus on periods before the fixed version was deployed and look for successful requests preceded by malformed or unusual verification inputs, repeated invalid-signature attempts followed by a success, unexpected changes in PBKDF2-related parameters, unsupported digest names, abnormal salt or iteration values, unusual encoding errors, and privileged actions performed with newly accepted or rarely seen tokens. Correlate application logs, API gateway logs, identity provider logs, WAF logs, authentication audit logs, and transaction/audit trails. If detailed cryptographic verification failures were not logged, investigate anomalous business events such as unauthorized account actions, unexpected privilege elevation, unexplained accepted webhooks, suspicious API calls using unusual tokens, or integrity-protected messages that cannot be reproduced under the patched library.

What your security team should do

  • Inventory all applications, packages, containers, and frontend bundles that include pbkdf2, prioritizing internet-facing services and authentication, authorization, signing, token, payment, or integrity-verification workflows.
  • Upgrade browserify/pbkdf2 to a fixed release or revision containing e3102a8cd4830a3ac85cd0dd011cc002fdde33bb, and update Mageia kernel-linus packages to 4.14.100-1.mga6 or later where applicable.
  • Rebuild and redeploy applications after dependency updates; do not rely only on source repository changes if vulnerable code is already bundled into deployed artifacts.
  • Review code paths that allow user-controlled PBKDF2 parameters and enforce strict allowlists for digest algorithm, encoding, salt format, iteration count, and derived-key length.
  • Add tests that prove invalid or tampered signatures, tokens, and derived-key checks are rejected consistently.
  • Monitor authentication, token-verification, and signature-verification failures for unusual malformed inputs or repeated edge-case probing.
  • Because EPSS is low and there is no KEV listing or known exploit maturity, prioritize based on whether the affected library protects trust boundaries rather than treating all installations as equal risk.

The record

Improper Input Validation vulnerability in pbkdf2 allows Signature Spoofing by Improper Validation.This issue affects pbkdf2: <=3.1.2.

Affected packages

Ecosystem Package Introduced Fixed
npm pbkdf2 1.0.0 3.1.3
Debian:11 node-pbkdf2 0 No fix
Debian:12 node-pbkdf2 0 No fix
Debian:13 node-pbkdf2 0 No fix
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise Module for Package Hub 15 SP6 python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP4 aws-cli 0 1.33.26-150400.34.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP4 python-boto3 0 1.34.138-150400.27.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP4 python-botocore 0 1.34.144-150400.41.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP5 aws-cli 0 1.33.26-150400.34.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP5 python-boto3 0 1.34.138-150400.27.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP5 python-botocore 0 1.34.144-150400.41.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 aws-cli 0 1.33.26-150400.34.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 python-boto3 0 1.34.138-150400.27.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 python-botocore 0 1.34.144-150400.41.7.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP7 aws-cli 0 1.33.26-150400.34.7.1
SUSE:Linux Enterprise Module for Python 3 15 SP6 python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Module for Python 3 15 SP6 python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise Module for Python 3 15 SP6 python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise Module for Python 3 15 SP6 python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise Module for Python 3 15 SP6 python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-boto3 0 1.34.138-150400.27.7.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-botocore 0 1.34.144-150400.41.7.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise Module for Python 3 15 SP7 python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise Server 15 SP4-LTSS python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Server 15 SP4-LTSS python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise Server 15 SP4-LTSS python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise Server 15 SP4-LTSS python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise Server 15 SP4-LTSS python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise Server 15 SP5-LTSS python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Server 15 SP5-LTSS python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise Server 15 SP5-LTSS python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise Server 15 SP5-LTSS python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise Server 15 SP5-LTSS python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 python-pytest-mock 0 3.14.0-150400.13.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP5 python-coverage 0 7.6.10-150400.12.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP5 python-pluggy 0 1.5.0-150400.14.10.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP5 python-pytest 0 8.3.5-150400.3.9.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP5 python-pytest-cov 0 6.2.1-150400.12.6.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP5 python-pytest-mock 0 3.14.0-150400.13.6.1
openSUSE:Leap 15.6 aws-cli 0 1.33.26-150400.34.7.1
openSUSE:Leap 15.6 python-boto3 0 1.34.138-150400.27.7.1
openSUSE:Leap 15.6 python-botocore 0 1.34.144-150400.41.7.1
openSUSE:Leap 15.6 python-coverage 0 7.6.10-150400.12.6.1
openSUSE:Leap 15.6 python-flaky 0 3.8.1-150400.14.6.1
openSUSE:Leap 15.6 python-pluggy 0 1.5.0-150400.14.10.1
openSUSE:Leap 15.6 python-pytest 0 8.3.5-150400.3.9.1
openSUSE:Leap 15.6 python-pytest-cov 0 6.2.1-150400.12.6.1
openSUSE:Leap 15.6 python-pytest-mock 0 3.14.0-150400.13.6.1
openSUSE:Tumbleweed velociraptor 0 0.7.0.4.git185.a5708584-2.1

Related vulnerabilities