Description
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.
Recommendation
Update the elliptic package to the latest compatible version. Followings are version details:
- Affected version(s): < 6.5.6
- Patched version(s): 6.5.6
References
- GHSA-434g-2637-qmqr
- security.netapp.com
- blog.trailofbits.com
- CVE-2024-48949
- CWE-347
- CAPEC-310
- OWASP 2021-A2
- OWASP 2021-A6
Related Issues
- Valid ECDSA signatures erroneously rejected in Elliptic - CVE-2024-48948
- Nuxt DevTools vulnerable to cross-site scripting (XSS) - CVE-2025-52662
- Elliptic allows BER-encoded signatures - CVE-2024-42461
- Elliptic's ECDSA missing check for whether leading bit of r and s is zero - CVE-2024-42460
- Tags:
- npm
- elliptic
Anything's wrong? Let us know Last updated on November 27, 2025