Hardware security keys which are considered as the most secure means of protection for accounts can be cloned by exploiting an electromagnetic side-channel in the chip embedded in it.
According to a new research published, an attacker in possession of a two-factor authentication (2FA) device can clone it by exploiting the vulnerability that has been dubbed as CVE-2021-3011.
The threat actor can extract the encryption key or the ECDSA private key linked to a victim’s account from a FIDO Universal 2nd Factor (U2F) device like Google Titan Key or YubiKey.
It is possible for the attacker to sign in to the victim’s application account without the U2F device, and without the victim noticing by creating a clone of the device. This clone will give access to the application account as long as the legitimate user does not revoke its second factor authentication credentials.
The products impacted by the flaw includes all versions of Google Titan Security Key, Yubico Yubikey Neo, Feitian FIDO NFC USB-A / K9, Feitian MultiPass FIDO / K13, Feitian ePass FIDO USB-C / K21, and Feitian FIDO NFC USB-C / K40.
Besides the security keys, the attack can also be performed on NXP JavaCard chips, including NXP J3D081_M59_DF, NXP J3A081, NXP J2E081_M64, NXP J3D145_M59, NXP J3D081_M59, NXP J3E145_M64, and NXP J3E081_M64_DF, and their respective variants.
According to NinjaLab researchers, the key-recovery attack, however needs to meet a number of prerequisites in order to be successful.
First the attacker has to steal the target’s login and password of an account secured by the physical key, then attain access to Titan Security Key in question. The attacker also needs to have an expensive equipment costing around $12,000, and enough expertise to build custom software to extract the key linked to the account.
The researchers said that it is still safer to use Google Titan Security Key or other impacted products as a FIDO U2F two-factor authentication token to sign in to applications rather than not using one.
In order to clone the key, the researchers tore the device down using a hot air gun to remove the plastic casing and expose the two microcontrollers soldered in it — a secure enclave (NXP A700X chip) used to perform the cryptographic operations and a general-purpose chip that acts as a router between the USB/NFC interfaces and the authentication microcontroller.
After that it is possible to get the ECDSA encryption key via a side-channel attack by observing the electromagnetic radiations coming off the NXP chip during ECDSA signatures, the core cryptographic operation of the FIDO U2F protocol that’s performed when a U2F key is registered for the first time to work with a new account.
A side-channel attack typically works based on information got from the implementation of a computer system, rather than exploiting a weakness in the software. Such attacks usually leverage timing information, power consumption, electromagnetic leaks, and acoustic signals as a source of data leakage.
On getting 6,000 such side-channel traces of the U2F authentication request commands over a six-hour period, the researchers said they were able to recover the ECDSA private key linked to a FIDO U2F account created for the experiment using an unsupervised machine learning model.
This work implies that Google Titan Security Key or other impacted products would not avoid unnoticed security breach by attackers willing to put enough effort into it.
Those users who face such a threat must switch to other FIDO U2F hardware security keys, where no vulnerability has yet been discovered.
Image Credits : Android Police