CVE-2024-48949: Critical severity indutny Elliptic Node.js vulnerability
The Elliptic package 6.5.5 for Node.js for EDDSA implementation does not perform the required check if the signature proof(s) is within the bounds of the order n of the base point of the elliptic curve, leading to signature malleability. Namely, the verify function in lib/elliptic/eddsa/index.js omits sig.S().gte(sig.eddsa.curve.n) || sig.S().isNeg() validation.
This vulnerability could have a security-relevant impact if an application relies on the uniqueness of a signature.
Other sources
The verify function in lib/elliptic/eddsa/index.js in the Elliptic package before 6.5.6 for Node.js omits "sig.S().gte(sig.eddsa.curve.n) || sig.S().isNeg()" validation.
— MITRE
Affected Software
Remediation
Patch Available
Event History
Frequently Asked Questions
What is the severity of CVE-2024-48949?
CVE-2024-48949 is a critical vulnerability due to the potential for signature malleability in the Elliptic package.
How do I fix CVE-2024-48949?
To fix CVE-2024-48949, update the Elliptic package to version 6.5.6 or later.
Which versions of the Elliptic package are affected by CVE-2024-48949?
CVE-2024-48949 affects the Elliptic package versions before 6.5.6.
What type of vulnerability is CVE-2024-48949?
CVE-2024-48949 is classified as a signature malleability vulnerability in an EDDSA implementation.
Where does the vulnerability CVE-2024-48949 occur in the code?
CVE-2024-48949 occurs in the `verify` function within `lib/elliptic/eddsa/index.js` of the Elliptic package.