CVE-2026-125335 Forge: Ed25519 signature verification accepts small-order public keys
- Exploited in the wild
- Not known
- Fix
- Available
What is CVE-2026-125335?
CVE-2026-125335 is a low-severity vulnerability in digitalbazaar forge, published on 10 Nov 2026.
Official description
Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.3, ed25519.verify() decodes a public key in crypto_sign_open() without rejecting small-order points or their non-canonical encodings. With S = 0 and a small-order R value, an attacker who can choose the public key can produce signatures that verify for many messages, or all messages with the identity key, without a private key. This can defeat proof-of-possession, attribution, non-repudiation, or deduplication checks that rely on a signature being bound to the message. Keys produced by normal Ed25519 key generation are not small-order, so applications that verify only trusted or internally generated public keys are not affected. This issue is fixed in version 1.4.3.
Weakness: CWE-347
Which versions are affected by CVE-2026-125335?
1 open source package ship an affected version, including node-forge.
| Package | Affected | Fixed in |
|---|---|---|
node-forge npm | All versions | 1.4.3 |
How do I fix CVE-2026-125335?
Upgrade node-forge to 1.4.3 or later.
Is CVE-2026-125335 being exploited?
There is no known exploitation of CVE-2026-125335 in the wild and no public exploit code.
Sources
Also known as GHSA-6889-vf6x-f3g5, MINI-56p6-pgc4-f4c7, MINI-65pg-wffw-qp3q, MINI-9mm3-w53q-3mmr, MINI-p23q-whc3-fgv3, MINI-wx5r-rmxm-hw6w and 2 more.