Vulnerability Details CVE-2024-1544
Generating the ECDSA nonce k samples a random number r and then
truncates this randomness with a modular reduction mod n where n is the
order of the elliptic curve. Meaning k = r mod n. The division used
during the reduction estimates a factor q_e by dividing the upper two
digits (a digit having e.g. a size of 8 byte) of r by the upper digit of
n and then decrements q_e in a loop until it has the correct size.
Observing the number of times q_e is decremented through a control-flow
revealing side-channel reveals a bias in the most significant bits of
k. Depending on the curve this is either a negligible bias or a
significant bias large enough to reconstruct k with lattice reduction
methods. For SECP160R1, e.g., we find a bias of 15 bits.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.001
EPSS Ranking 17.4%
CVSS Severity
CVSS v3 Score 4.1
Products affected by CVE-2024-1544
-
cpe:2.3:a:wolfssl:wolfssl:-
-
cpe:2.3:a:wolfssl:wolfssl:0.5
-
cpe:2.3:a:wolfssl:wolfssl:1.8.8.0
-
cpe:2.3:a:wolfssl:wolfssl:1.9.0
-
cpe:2.3:a:wolfssl:wolfssl:2.0.2
-
cpe:2.3:a:wolfssl:wolfssl:2.0.3
-
cpe:2.3:a:wolfssl:wolfssl:2.0.6
-
cpe:2.3:a:wolfssl:wolfssl:2.0.8
-
cpe:2.3:a:wolfssl:wolfssl:2.1.1
-
cpe:2.3:a:wolfssl:wolfssl:2.1.2
-
cpe:2.3:a:wolfssl:wolfssl:2.1.4
-
cpe:2.3:a:wolfssl:wolfssl:2.2.0
-
cpe:2.3:a:wolfssl:wolfssl:2.2.1
-
cpe:2.3:a:wolfssl:wolfssl:2.2.2
-
cpe:2.3:a:wolfssl:wolfssl:2.3.0
-
cpe:2.3:a:wolfssl:wolfssl:2.4.0
-
cpe:2.3:a:wolfssl:wolfssl:2.4.2
-
cpe:2.3:a:wolfssl:wolfssl:2.4.6
-
cpe:2.3:a:wolfssl:wolfssl:2.4.7
-
cpe:2.3:a:wolfssl:wolfssl:2.5.0
-
cpe:2.3:a:wolfssl:wolfssl:2.5.2
-
cpe:2.3:a:wolfssl:wolfssl:2.6.0
-
cpe:2.3:a:wolfssl:wolfssl:2.6.2
-
cpe:2.3:a:wolfssl:wolfssl:2.7.0
-
cpe:2.3:a:wolfssl:wolfssl:2.7.2
-
cpe:2.3:a:wolfssl:wolfssl:2.8.0
-
cpe:2.3:a:wolfssl:wolfssl:2.8.2
-
cpe:2.3:a:wolfssl:wolfssl:2.8.3
-
cpe:2.3:a:wolfssl:wolfssl:2.8.4
-
cpe:2.3:a:wolfssl:wolfssl:2.8.5
-
cpe:2.3:a:wolfssl:wolfssl:2.8.6
-
cpe:2.3:a:wolfssl:wolfssl:2.9.0
-
cpe:2.3:a:wolfssl:wolfssl:2.9.1
-
cpe:2.3:a:wolfssl:wolfssl:2.9.2
-
cpe:2.3:a:wolfssl:wolfssl:2.9.4
-
cpe:2.3:a:wolfssl:wolfssl:3.0.0
-
cpe:2.3:a:wolfssl:wolfssl:3.0.2
-
cpe:2.3:a:wolfssl:wolfssl:3.1.0
-
cpe:2.3:a:wolfssl:wolfssl:3.10.0
-
cpe:2.3:a:wolfssl:wolfssl:3.10.0a
-
cpe:2.3:a:wolfssl:wolfssl:3.10.2
-
cpe:2.3:a:wolfssl:wolfssl:3.10.3
-
cpe:2.3:a:wolfssl:wolfssl:3.10.4
-
cpe:2.3:a:wolfssl:wolfssl:3.11.0
-
cpe:2.3:a:wolfssl:wolfssl:3.11.1
-
cpe:2.3:a:wolfssl:wolfssl:3.12.0
-
cpe:2.3:a:wolfssl:wolfssl:3.12.2
-
cpe:2.3:a:wolfssl:wolfssl:3.13.0
-
cpe:2.3:a:wolfssl:wolfssl:3.13.2
-
cpe:2.3:a:wolfssl:wolfssl:3.13.3
-
cpe:2.3:a:wolfssl:wolfssl:3.14.0
-
cpe:2.3:a:wolfssl:wolfssl:3.14.2
-
cpe:2.3:a:wolfssl:wolfssl:3.14.4
-
cpe:2.3:a:wolfssl:wolfssl:3.14.5
-
cpe:2.3:a:wolfssl:wolfssl:3.15.0
-
cpe:2.3:a:wolfssl:wolfssl:3.15.3
-
cpe:2.3:a:wolfssl:wolfssl:3.15.5
-
cpe:2.3:a:wolfssl:wolfssl:3.15.6
-
cpe:2.3:a:wolfssl:wolfssl:3.15.7
-
cpe:2.3:a:wolfssl:wolfssl:3.15.8
-
cpe:2.3:a:wolfssl:wolfssl:3.2.0
-
cpe:2.3:a:wolfssl:wolfssl:3.2.4
-
cpe:2.3:a:wolfssl:wolfssl:3.2.6
-
cpe:2.3:a:wolfssl:wolfssl:3.3.0
-
cpe:2.3:a:wolfssl:wolfssl:3.3.2
-
cpe:2.3:a:wolfssl:wolfssl:3.3.3
-
cpe:2.3:a:wolfssl:wolfssl:3.4.0
-
cpe:2.3:a:wolfssl:wolfssl:3.4.2
-
cpe:2.3:a:wolfssl:wolfssl:3.4.6
-
cpe:2.3:a:wolfssl:wolfssl:3.4.8
-
cpe:2.3:a:wolfssl:wolfssl:3.6.0
-
cpe:2.3:a:wolfssl:wolfssl:3.6.2
-
cpe:2.3:a:wolfssl:wolfssl:3.6.6
-
cpe:2.3:a:wolfssl:wolfssl:3.6.8
-
cpe:2.3:a:wolfssl:wolfssl:3.6.9
-
cpe:2.3:a:wolfssl:wolfssl:3.7.0
-
cpe:2.3:a:wolfssl:wolfssl:3.7.1
-
cpe:2.3:a:wolfssl:wolfssl:3.7.3
-
cpe:2.3:a:wolfssl:wolfssl:3.8.0
-
cpe:2.3:a:wolfssl:wolfssl:3.9.0
-
cpe:2.3:a:wolfssl:wolfssl:3.9.1
-
cpe:2.3:a:wolfssl:wolfssl:3.9.10
-
cpe:2.3:a:wolfssl:wolfssl:3.9.6
-
cpe:2.3:a:wolfssl:wolfssl:3.9.8
-
cpe:2.3:a:wolfssl:wolfssl:4.0
-
cpe:2.3:a:wolfssl:wolfssl:4.0.0
-
cpe:2.3:a:wolfssl:wolfssl:4.1.0
-
cpe:2.3:a:wolfssl:wolfssl:4.2.0
-
cpe:2.3:a:wolfssl:wolfssl:4.2.0c
-
cpe:2.3:a:wolfssl:wolfssl:4.3.0
-
cpe:2.3:a:wolfssl:wolfssl:4.4.0
-
cpe:2.3:a:wolfssl:wolfssl:4.5.0
-
cpe:2.3:a:wolfssl:wolfssl:4.6.0
-
cpe:2.3:a:wolfssl:wolfssl:4.7.0
-
cpe:2.3:a:wolfssl:wolfssl:4.8.0
-
cpe:2.3:a:wolfssl:wolfssl:4.8.1
-
cpe:2.3:a:wolfssl:wolfssl:5.0.0
-
cpe:2.3:a:wolfssl:wolfssl:5.1.0
-
cpe:2.3:a:wolfssl:wolfssl:5.1.1
-
cpe:2.3:a:wolfssl:wolfssl:5.2.0
-
cpe:2.3:a:wolfssl:wolfssl:5.2.1
-
cpe:2.3:a:wolfssl:wolfssl:5.3.0
-
cpe:2.3:a:wolfssl:wolfssl:5.4.0
-
cpe:2.3:a:wolfssl:wolfssl:5.5.0
-
cpe:2.3:a:wolfssl:wolfssl:5.5.1
-
cpe:2.3:a:wolfssl:wolfssl:5.5.2
-
cpe:2.3:a:wolfssl:wolfssl:5.5.3
-
cpe:2.3:a:wolfssl:wolfssl:5.5.4
-
cpe:2.3:a:wolfssl:wolfssl:5.6.0
-
cpe:2.3:a:wolfssl:wolfssl:5.6.2
-
cpe:2.3:a:wolfssl:wolfssl:5.6.3
-
cpe:2.3:a:wolfssl:wolfssl:5.6.4
-
cpe:2.3:a:wolfssl:wolfssl:5.6.6
-
cpe:2.3:a:wolfssl:wolfssl:5.7.0