Snyk has a proof-of-concept or detailed explanation of how to exploit this vulnerability.
In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applicationsA fix was pushed into the master
branch but not yet published.
Affected versions of this package are vulnerable to Generation of Predictable Numbers or Identifiers via the toBuffer
function. An attacker can predict cryptographic keys that were generated using Uint8Array
inputs on affected Node.js versions, leading to compromised security of derived keys or passwords.
Note: This is only exploitable when used in the environment running Node.js
or io.js
in versions lower than 3.0.0.
Updating to a fixed version isn't sufficient if PBKDF2 was used directly or via a bundling package with algorithm arguments outside the specified list. Verify where those keys are stored, how they are used, and take necessary actions like rotation or replacement.
require('pbkdf2').pbkdf2Sync(new Uint8Array([1,2,3]), new Uint8Array([1,3,4]), 1024, 32, 'sha256')