What’s Vulnerable › Vulnerabilities
CVE-2025-37984: crypto: ecdsa - Harden against integer overflows in DIV_ROUND_UP()
- Severity: medium (CVSS 5.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-05-20 · updated 2026-10-15
- Weakness: CWE-190
Description
In the Linux kernel, the following vulnerability has been resolved: crypto: ecdsa - Harden against integer overflows in DIV_ROUND_UP() Herbert notes that DIV_ROUND_UP() may overflow unnecessarily if an ecdsa implementation's ->key_size() callback returns an unusually large value. Herbert instead suggests (for a division by 8): X / 8 + !!(X & 7) Based on this formula, introduce a generic DIV_ROUND_UP_POW2() macro and use it in lieu of DIV_ROUND_UP() for ->key_size() return values. Additionally, use the macro in ecc_digits_from_bytes(), whose "nbytes" parameter is a ->key_size() return value in some instances, or a user-specified ASN.1 length in the case of ecdsa_get_signature_rs().
Affected products
- Linux kernel: from 6.6.70 before 6.6.99; from 6.10 before 6.12.39; from 6.13 before 6.14.5 — fixed in 6.12.39, 6.14.5, 6.6.99
How to fix
Upgrade to a fixed version: Linux kernel 6.12.39, 6.14.5, 6.6.99. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/921b8167f10708e38080f84e195cdc68a7a561f1
- https://git.kernel.org/stable/c/b16510a530d1e6ab9683f04f8fb34f2e0f538275
- https://git.kernel.org/stable/c/f02f0218be412cff1c844addf58e002071be298b
- https://git.kernel.org/stable/c/f2133b849ff273abddb6da622daddd8f6f6fa448
Get alerted when CVE-2025-37984 or the next vulnerability affects your stack