#VU46187 Side channel attack on classical CBC decryption in (D)TLS in mbed TLS - CVE-2020-16150
Published: September 1, 2020
mbed TLS
ARM
Description
The vulnerability allows a local user to perform a side-channel attack.
The vulnerability is caused due to mbed TLS used dummy rounds of the compression function associated with the hash
used for HMAC in order to hide the length of the padding to remote
attackers when ecrypting/authenticating (D)TLS record in a connection using a CBC ciphersuite without the Encrypt-then-Mac extension. A local user who is able to observe the state of the cache could monitor the presence of mbedtls_md_process()
in the cache in order to determine when the actual computation ends and
when the dummy rounds start. This is a reliable target as it's always
called at least once.
Successful exploitation of the vulnerability may allow an attacker with access to enough information about the state of the cache (including, but not limited to, an untrusted operating system attacking a secure enclave such as SGX or the TrustZone secure world) to recover portions of the plaintext of a (D)TLS record.