Libsodium Elliptic Curve Point Validation Vulnerability in Crypto Core Ed25519

Vulnerability

A vulnerability exists in Libsodium's low-level function 'crypto_core_ed25519_is_valid_point' prior to the ad3004e commit. This vulnerability allows certain invalid elliptic curve points to be accepted, specifically points not in the main cryptographic group. The issue arises in custom cryptography implementations that rely on this validation function to check points from untrusted sources.

Impact

The vulnerability can lead to the acceptance of invalid elliptic curve points in the Ed25519 signature scheme, potentially undermining the correctness of cryptographic operations that depend on this validation.

Reproduction

The vulnerability can be reproduced by using a version of Libsodium prior to the ad3004e commit and calling the 'crypto_core_ed25519_is_valid_point' function with a point that is invalid but not correctly rejected by the validation logic. This can be done by adding a low-order point to a valid main subgroup point, which would then be incorrectly accepted as valid.

Remediation

Users can update to the latest version of Libsodium, where this vulnerability has been fixed. Instructions for downloading the latest version can be found on the Libsodium GitHub releases page.

Added: Dec 31, 2025, 6:17 AM
Updated: Dec 31, 2025, 6:17 AM

Vulnerability Rating

Custom Algorithm
spread
0.0
impact
0.6
exploitability
8.4
remediation
0.0
relevance
1.8
threat
4.8
urgency
2.9
incentive
5.8

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.