Side-channel security analysis on OP-TEE solution
Núria Carrió Misas · 2017
The Trusted Execution Environment (TEE) is a secure and integrity protected area of the main processor of a mobile device (e.g. smart phone or tablet). Mobile-platforms design implementations are evolving fast and thus its security challenges. Depending on application purposes and its security requirements, several solutions arise for securing sensitive data and application code. Among them, the most common ones are Host Card Emulation (HCE), Secure Element (SE) and TEE. HCE is mainly a software-oriented solution, while SE is hardware oriented. TEE has found, in our humble opinion, an appropriate balance between software and hardware in order to provide security to mobile devices. To this day, TEE security has been mainly addressed from a software-security perspective. However, many hardware attacks can have a greater impact than their software counterparts. Among these attacks, Side-Channel Attacks (SCA), based on information gained from the physical implementation of a cryptosystem, deserve special attention. Typically, TEE technology runs inside generic-purpose hardware with no specific, or powerful enough, SCA protection. Fortunately, since those processors typically run at high frequencies, SCA implementation becomes more challenging. The main goal of this work is to analyze how vulnerable TEE is to SCAs. With such a purpose, this work presents an analysis of SCA impact over a specific TEE hardware-software combination that it can be also available in current commercial products. A source code review identified a timing leakage that has been exploited to extract a RSA key using EManations Analysis (EMA). The results, although specific, show that SCAs are nowadays a real threat to mobile devices and that specific countermeasures need to be provided.