HIGHCVSS 8.8
GHSA-2cgv-28vr-rv6j
libcrux incorrectly calculates on aarch64
Summary
On platforms without the `core::arch::aarch64::vxarq_u64` intrinsic, an unverified fallback in `libcrux-intrinsics` v0.0.3 passed incorrect arguments and produced wrong results. This corrupted SHA-3 digests and caused `libcrux-ml-kem` and `libcrux-ml-dsa` to sample incorrectly, yielding incorrect shared secrets and invalid signatures. The issue has been fixed in v0.0.4.
Affected packages
| Ecosystem | Package | Affected versions | Fixed versions |
|---|---|---|---|
| rust | libcrux-intrinsics | — | 0.0.4 |
| rust | libcrux-ml-dsa | — | 0.0.4 |
| rust | libcrux-ml-kem | — | 0.0.4 |
Remediation: Upgrade to 0.0.4 or later.
References
Includes data from the GitHub Advisory Database, licensed under CC-BY 4.0.