An issue was discovered in Arm Mbed TLS before 2.16.6 and 2.7.x before 2.7.15. An attacker that can get precise enough side-channel measurements can recover the long-term ECDSA private key by (1) reconstructing the projective coordinate of the result of scalar multiplication by exploiting side channels in the conversion to affine coordinates; (2) using an attack described by Naccache, Smart, and Stern in 2003 to recover a few bits of the ephemeral scalar from those projective coordinates via several measurements; and (3) using a lattice attack to get from there to the long-term ECDSA private key used for the signatures. Typically an attacker would have sufficient access when attacking an SGX enclave and controlling the untrusted OS.
The product behaves differently or sends different responses under different circumstances in a way that is observable to an unauthorized actor, which exposes security-relevant information about the state of the product, such as whether a particular operation was successful or not.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Mbed_tls | Arm | 2.7.0 (including) | 2.7.15 (excluding) |
Mbed_tls | Arm | 2.16.0 (including) | 2.16.6 (excluding) |
Mbedtls | Ubuntu | bionic | * |
Mbedtls | Ubuntu | eoan | * |
Mbedtls | Ubuntu | groovy | * |
Mbedtls | Ubuntu | hirsute | * |
Mbedtls | Ubuntu | impish | * |
Mbedtls | Ubuntu | kinetic | * |
Mbedtls | Ubuntu | lunar | * |
Mbedtls | Ubuntu | mantic | * |
Mbedtls | Ubuntu | trusty | * |
Mbedtls | Ubuntu | xenial | * |