CVE-2026-4258: Improper Verification of Cryptographic Signature in sjcl
Versions of the package sjcl before 1.0.9 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.
AI Analysis
Technical Summary
The sjcl package prior to version 1.0.9 contains a cryptographic vulnerability (CVE-2026-4258) where the function sjcl.ecc.basicKey.publicKey() fails to validate that public keys lie on the expected elliptic curve. This missing point-on-curve validation enables attackers to submit off-curve public keys to the ECDH implementation. Because the dhJavaEc() function returns the raw x-coordinate of the scalar multiplication without hashing or additional processing, it acts as a plaintext oracle. An attacker can exploit this to recover the victim's ECDH private key by analyzing the outputs from these crafted inputs. The vulnerability is classified under CWE-325 (Improper Verification of Cryptographic Signature) and has a CVSS 4.0 base score of 8.7, indicating high severity.
Potential Impact
An attacker can recover the victim's ECDH private key by exploiting the lack of point-on-curve validation and the plaintext oracle behavior of the dhJavaEc() function. This compromises the confidentiality of cryptographic operations relying on the ECDH key, potentially allowing decryption of sensitive data or impersonation in cryptographic protocols that use sjcl for key agreement.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official patch or fix is currently documented. Until a fix is available, users should avoid using vulnerable versions of sjcl for ECDH operations or implement additional validation to ensure public keys are on the correct curve before processing.
CVE-2026-4258: Improper Verification of Cryptographic Signature in sjcl
Description
Versions of the package sjcl before 1.0.9 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.
CVSS v4.0
Score 8.7high
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The sjcl package prior to version 1.0.9 contains a cryptographic vulnerability (CVE-2026-4258) where the function sjcl.ecc.basicKey.publicKey() fails to validate that public keys lie on the expected elliptic curve. This missing point-on-curve validation enables attackers to submit off-curve public keys to the ECDH implementation. Because the dhJavaEc() function returns the raw x-coordinate of the scalar multiplication without hashing or additional processing, it acts as a plaintext oracle. An attacker can exploit this to recover the victim's ECDH private key by analyzing the outputs from these crafted inputs. The vulnerability is classified under CWE-325 (Improper Verification of Cryptographic Signature) and has a CVSS 4.0 base score of 8.7, indicating high severity.
Potential Impact
An attacker can recover the victim's ECDH private key by exploiting the lack of point-on-curve validation and the plaintext oracle behavior of the dhJavaEc() function. This compromises the confidentiality of cryptographic operations relying on the ECDH key, potentially allowing decryption of sensitive data or impersonation in cryptographic protocols that use sjcl for key agreement.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official patch or fix is currently documented. Until a fix is available, users should avoid using vulnerable versions of sjcl for ECDH operations or implement additional validation to ensure public keys are on the correct curve before processing.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- snyk
- Date Reserved
- 2026-03-16T10:00:53.239Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 69b8e675771bdb17495b6829
Added to database: 03/17/2026, 05:28:21 UTC
Last enriched: 07/29/2026, 23:38:30 UTC
Last updated: 07/31/2026, 21:26:45 UTC
Views: 329
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.