GitHub Advisoryadvisory · npm

GHSA-2w8x-224x-785m sjcl is missing point-on-curve validation in sjcl.ecc.basicKey.publicKey

HIGH Published 2026-03-17 Modified 2026-03-25 Official page ↗
Aliases
CVE-2026-4258
Ecosystem
npm
Packages
sjcl
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weaknesses
CWE-325, CWE-347
Reviewed
2026-03-18

Affected packages

• npm sjcl: < 1.0.9 → fixed in 1.0.9

Description

All versions of the package sjcl are vulnerable to Improper Verification of Cryptographic Signature due to missing point-on-curve validation in sjcl.ecc.basicKey.publicKey(). An attacker can recover a victim's ECDH private key by sending crafted off-curve public keys and observing ECDH outputs. The dhJavaEc() function directly returns the raw x-coordinate of the scalar multiplication result (no hashing), providing a plaintext oracle without requiring any decryption feedback.

Related

Alias · CVE (1)

  • CVE-2026-4258 Versions of the package sjcl before 1.0.9 are vulnerable to Improper Verification of Cryptographic Signature due to missing point-on-curve… vulnerability

Weakness · CWE (2)

  • CWE-325 Missing Cryptographic Step weakness
  • CWE-347 Improper Verification of Cryptographic Signature weakness

References