CVE-2025-14505: 
JavaScript vulnerability analysis and mitigation

Overview

CVE-2025-14505 is a cryptographic implementation flaw in the Elliptic npm package (versions ≤ 6.6.1) affecting its ECDSA signature generation. When the RFC 6979 interim nonce value k has leading zeros, the package incorrectly computes its byte-length, causing k to be truncated during computation. This produces invalid signatures and, under certain conditions, enables cryptanalysis that can expose the private key. The vulnerability was disclosed on January 8, 2026, and carries a CVSS v3.1 score of 5.6 (Medium) and a CVSS v4.0 score of 2.9 (Low) (GitHub Advisory).

Technical details

The root cause is classified as CWE-1240 (Use of a Cryptographic Primitive with a Risky Implementation). The flaw resides in the _truncateToN function in ec/index.js, which uses the byte-length of the integer msg rather than the byte-length of the original message digest to compute truncation. When the first byte of the message digest is zero, the integer representation is shorter, causing incorrect truncation of the nonce k derived per RFC 6979 step 3.2. This miscalculation is particularly triggered when the message digest size exceeds the curve size (e.g., SHA-256 with secp224r1). An attacker who obtains both a faulty signature and a correct signature for the same inputs can apply cryptanalytic techniques to recover the private key (GitHub Issue #321, GitHub Advisory).

Impact

Exploitation of this vulnerability has two primary consequences: first, legitimate ECDSA signatures may be generated incorrectly, breaking transactions or communications that rely on signature verification; second, if an attacker can obtain both a faulty and a correct signature for the same message inputs, they may derive the signer's private key through cryptanalysis. Private key exposure could allow an attacker to forge signatures, impersonate the affected party, or compromise any system or asset protected by that key. IBM Cloud Pak for Integration, IBM Watsonx BI Assistant for CP4D, and Dell Disk Library for Mainframe are among the downstream products confirmed affected (IBM Advisory CP4I, IBM Advisory Watsonx).

Exploitability

No public proof-of-concept exploit code or in-the-wild exploitation has been observed as of the time of writing (GitHub Advisory). The EPSS score is approximately 0.026% (1st percentile), indicating a low near-term exploitation probability. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires high complexity — specifically, the attacker must obtain both a faulty signature and a valid signature for the same inputs, which is a non-trivial precondition. The vulnerability is more practically exploitable in prehash scenarios where an attacker can supply arbitrary message digests without proving they are the result of a hash function (GitHub Issue #321).

Exploitation steps

  1. Identify vulnerable deployments: Locate applications using the Elliptic npm package at version ≤ 6.6.1 that perform ECDSA signing, particularly with curve/hash combinations where the digest length exceeds the curve order size (e.g., SHA-256 with secp224r1).
  2. Obtain a faulty signature: Interact with the target application to trigger ECDSA signing of a message whose digest has a leading zero byte, causing the vulnerable _truncateToN function to truncate k incorrectly and produce a malformed signature.
  3. Obtain a correct signature: Acquire a valid ECDSA signature for the same message inputs from the same key (e.g., from a different, non-vulnerable implementation or by triggering signing when k does not have leading zeros).
  4. Apply cryptanalysis: Using the pair of faulty and correct signatures for the same inputs, apply lattice-based or algebraic cryptanalytic techniques to recover the private key d from the relationship between the two signatures and the known nonce bias.
  5. Exploit recovered key: Use the derived private key to forge arbitrary signatures, impersonate the victim, or access systems and assets protected by that key (GitHub Issue #321, GitHub Advisory).

Mitigation and workarounds

The primary remediation is to upgrade the Elliptic npm package to a version greater than 6.6.1 as soon as a patched release becomes available. Organizations should audit their dependency trees (including transitive dependencies) for use of Elliptic ≤ 6.6.1 using tools such as npm audit or Dependabot. IBM has issued patches for affected products: Cloud Pak for Integration and Watsonx BI Assistant for CP4D users should apply the vendor-provided updates (IBM Advisory CP4I, IBM Advisory Watsonx). As a short-term workaround, avoid using Elliptic for ECDSA signing with curve/hash combinations where the digest length exceeds the curve order (e.g., avoid SHA-256 with secp224r1) until the package is updated (GitHub Advisory).

Community reactions

The vulnerability was originally reported by researcher bleichenbacher-daniel in October 2024 via a GitHub issue, noting the incorrect truncation behavior and potential for key leakage, though initially assessing it as likely not exploitable under normal assumptions (GitHub Issue #321). IBM issued security bulletins for multiple affected products in April 2026, indicating downstream vendor awareness and response (IBM Advisory CP4I). Community discussion has also surfaced in the Meteor.js forums regarding the vulnerability's presence in transitive dependencies where upstream maintainers have been unresponsive.

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

Debian

Fixed

bookworm

node-elliptic

Affected

sid

node-elliptic: 6.6.1+dfsg+~6.4.18-2

Fixed

trixie

node-elliptic

Affected

Ubuntu

Unknown

bionic (esm-apps)

node-elliptic

Unknown

devel

node-elliptic

Unknown

focal (esm-apps)

node-elliptic

Unknown

jammy

node-elliptic

Unknown

jammy (esm-apps)

node-elliptic

Unknown

noble

node-elliptic

Unknown

noble (esm-apps)

node-elliptic

Unknown

resolute

node-elliptic

Unknown

RHEL / CentOS

Affected

OpenShift

openshift4/ose-console

Affected

RHEL 8

mozjs60.src

Affected

RHEL 9

gjs.src

Affected

Source: This report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-966w-4vpf-p7hcHIGH7.1
  • JavaScript logoJavaScript
  • @aloma.io/aloma
NoYesOct 25, 2026
GHSA-mrwp-f3q8-3g9pMEDIUM5.9
  • JavaScript logoJavaScript
  • follow-redirects
NoYesOct 25, 2026
GHSA-hfm3-x63j-7fxpHIGHN/A
  • JavaScript logoJavaScript
  • @payload-auth-link/migrate
NoYesOct 25, 2026
GHSA-6244-vvv9-76f5MEDIUMN/A
  • JavaScript logoJavaScript
  • @payload-auth-link/plugin
NoYesOct 25, 2026
GHSA-q53q-qg98-p9jfHIGHN/A
  • JavaScript logoJavaScript
  • llm-fw
NoYesOct 25, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management