Uncontrolled Recursionorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Uncontrolled Recursion via the fromDer function in asn1.js, which lacks recursion depth. An attacker can cause stack exhaustion and disrupt service availability by submitting specially crafted, deeply nested DER-encoded ASN.1 data.
How to fix Uncontrolled Recursion? A fix was pushed into the master branch but not yet published.
| |
Integer Overflow or Wraparoundorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Integer Overflow or Wraparound via the derToOid function in the asn1.js file, which decodes ASN.1 structures containing OIDs with oversized arcs. An attacker can bypass security decisions based on OID validation by crafting malicious ASN.1 data that exploits 32-bit bitwise truncation.
How to fix Integer Overflow or Wraparound? A fix was pushed into the master branch but not yet published.
| |
Interpretation Conflictorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Interpretation Conflict via the asn1.validate() function. An attacker can cause schema validation to become desynchronized, resulting in semantic divergence that may allow bypassing cryptographic verifications and security decisions, by passing in ASN.1 data with optional parameters that may be interpreted as object boundaries.
How to fix Interpretation Conflict? A fix was pushed into the master branch but not yet published.
| |
Improper Verification of Cryptographic Signatureorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Improper Verification of Cryptographic Signature due to RSA's PKCS#1 v1.5 signature verification code which does not properly check DigestInfo for a proper ASN.1 structure. This can lead to successful verification with signatures that contain invalid structures but a valid digest.
How to fix Improper Verification of Cryptographic Signature? Upgrade org.webjars.npm:node-forge to version 1.3.1 or higher.
| |
Improper Verification of Cryptographic Signatureorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Improper Verification of Cryptographic Signature due to RSAs PKCS#1` v1.5 signature verification code which is lenient in checking the digest algorithm structure. This can allow a crafted structure that steals padding bytes and uses unchecked portion of the PKCS#1 encoded message to forge a signature when a low public exponent is being used.
How to fix Improper Verification of Cryptographic Signature? Upgrade org.webjars.npm:node-forge to version 1.3.1 or higher.
| |
Improper Verification of Cryptographic Signatureorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Improper Verification of Cryptographic Signature due to RSA's PKCS#1 v1.5 signature verification code which does not check for tailing garbage bytes after decoding a DigestInfo ASN.1 structure. This can allow padding bytes to be removed and garbage data added to forge a signature when a low public exponent is being used.
How to fix Improper Verification of Cryptographic Signature? Upgrade org.webjars.npm:node-forge to version 1.3.1 or higher.
| |
Prototype Pollutionorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Prototype Pollution via the forge.debug API if called with untrusted input.
How to fix Prototype Pollution? Upgrade org.webjars.npm:node-forge to version 1.3.1 or higher.
| |
Open Redirectorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Open Redirect via parseUrl function when it mishandles certain uses of backslash such as https:/\/\/\ and interprets the URI as a relative path.
PoC:
// poc.js
var forge = require("node-forge");
var url = forge.util.parseUrl("https:/\/\/\www.github.com/foo/bar");
console.log(url);
// Output of node poc.js:
{
full: 'https://',
scheme: 'https',
host: '',
port: 443,
path: '/www.github.com/foo/bar', <<<---- path should be "/foo/bar"
fullHost: ''
}
How to fix Open Redirect? Upgrade org.webjars.npm:node-forge to version 1.3.1 or higher.
| |
Prototype Pollutionorg.webjars.npm:node-forge is a WebJar for node-forge.
Affected versions of this package are vulnerable to Prototype Pollution via the util.setPath function.
Note: version 0.10.0 is a breaking change removing the vulnerable functions.
POC:
const nodeforge = require('node-forge');
var obj = {};
nodeforge.util.setPath(obj, ['__proto__', 'polluted'], true);
console.log(polluted);
How to fix Prototype Pollution? Upgrade org.webjars.npm:node-forge to version 1.3.1 or higher.
| |