Techniques for Establishing Trust in Modern Constrained Sensing Platforms with Trusted Execution Environments
Total Page:16
File Type:pdf, Size:1020Kb
ROYAL HOLLOWAY,UNIVERSITY OF LONDON DOCTORAL THESIS Techniques for Establishing Trust in Modern Constrained Sensing Platforms with Trusted Execution Environments Author: Supervisor: Carlton SHEPHERD Prof. Konstantinos MARKANTONAKIS A thesis submitted in fulfillment of the requirements for the degree of Doctor of Philosophy in the Information Security Group Department of Mathematics January 17, 2019 3 Declaration of Authorship I, Carlton SHEPHERD, declare that this thesis titled, “Techniques for Establish- ing Trust in Modern Constrained Sensing Platforms with Trusted Execution Environments” and the work presented in it is my own. I confirm that: This doctoral thesis and the work therein was conducted under the super- vision of Prof. Konstantinos Markantonakis. The work presented in this thesis is the result of original research carried out by myself, or in collaboration with others, while enrolled in the Department of Mathematics as a candidate for the degree of Doctor of Philosophy. This work has not been submitted for any other degree or award at other university or educational establishment. Signed: Date: 5 Abstract The Internet of Things (IoT) – the notion that interconnected everyday objects will acquire the ability to monitor and act upon their environment – is antici- pated to benefit multiple domains, including manufacturing, health and social care, finance, and within the home. However, a plethora of security and trust concerns surround the deployment of millions of devices that transmit sensing data to inform critical decision-making, with potentially serious consequences for end-users. Trusted Execution Environments (TEEs) are emerging as a robust and widely-available solution for protecting the confidentiality and integrity of sensitive applications on IoT devices. TEEs continue a succession of secure execution technologies, including smart cards and embedded Secure Elements, by employing hardware-assistance for protecting run-time accesses to sensitive memory locations, input/output (I/O) devices, and persistent data. TEEs can also provide many of the mechanisms provided by other trusted computing primitives, namely the Trusted Platform Module (TPM), like remote attestation. Given their recent inception, however, TEEs lack the maturity and the ecosys- tem of long-standing solutions such as TPMs, particularly for constrained devices. This thesis identifies and analyses a multitude of such challenges, resulting in the proposal and evaluation of contributions in five areas of concern. This includes applying TEEs to sensor-driven continuous authentication schemes, an emerging paradigm for addressing the shortfalls of conventional biometrics; secure and mutually trusted communication between two TEEs on remotely located devices; tamper-resistant system logging for constrained platforms with TEEs; remote TEE credential management with respect to centralised IoT deployments, e.g. smart cities and industrial IoT; and a critical evaluation of proposed solutions to relay attacks in contactless transactions, to which existing TEEs are vulnerable. This thesis concludes by identifying open research challenges surrounding the deployment and management of constrained device TEEs in IoT applications. 7 Acknowledgements First and foremost, I would like to thank my supervisor Prof. Konstantinos Markantonakis, who was always understanding, accommodating, supportive, and provided helpful advice at every turn. My appreciation also goes to the current and previous members of the Smart Card Centre (SCC) at Royal Holloway, who provided many hours of insightful and interesting discussions on a myriad of topics, ranging from Android to FPGAs, NFC to automotive security, and many, many more. Special thanks go to Raja N. Akram and Iakovos Gurulian from the SCC for many interesting and rewarding collaborations. Raja was also indispensable in identifying any flaws and weaknesses in my ideas, and providing many helpful suggestions throughout my studies. Iakovos, meanwhile, was there for any much-needed pints, suggestions, and discussions into the early hours of the morning. I would also like to thank Fabien Petitcolas at OneSpan (formerly VASCO Data Security), who hosted me for my internship in Wemmel, Belgium. Although I didn’t realise at the time, the experience helped to shape my Ph.D. direction towards more interesting and fruitful grounds. Furthermore, I greatly appreciate the support from the EPSRC, who funded my studies, and the staff and students involved with the Centre for Doctoral Training (CDT) at Royal Holloway; pursuing this Ph.D. would have been impossible otherwise. Special thanks go to Dusan Repel and Blake Loring, in particular, for many interesting discussions. Last, but certainly not least, my thanks go to my family and Ellen for the support they provided over the past four years. 9 Publications [1] C. Shepherd, G. Arfaoui, I. Gurulian, R. P. Lee, K. Markantonakis, R. N. Akram, D. Sauveron, and E. Conchon, “Secure and Trusted Execution: Past, Present, and Future - A Critical Review in the Context of the Internet of Things and Cyber-Physical Systems”, in Proceedings of the 15th IEEE International Conference on Trust, Security and Privacy in Computing and Communications, ser. TrustCom ’16, IEEE, 2016, pp. 168–177. [2] C. Shepherd, R. N. Akram, and K. Markantonakis, “Towards Trusted Execution of Multi-modal Continuous Authentication Schemes”, in Pro- ceedings of the 32nd Symposium on Applied Computing, ser. SAC ’17, ACM, 2017, pp. 1444–1451. [3] C. Shepherd, I. Gurulian, E. Frank, K. Markantonakis, R. N. Akram, K. Mayes, and E. Panaousis, “The Applicability of Ambient Sensors as Prox- imity Evidence for NFC Transactions”, in Mobile Security Technologies, IEEE Security and Privacy Workshops, ser. SPW ’17, IEEE, 2017. [4] C. Shepherd, R. N. Akram, and K. Markantonakis, “Establishing Mutually Trusted Channels for Remote Sensing Devices with Trusted Execution Environments”, in Proceedings of the 12th International Conference on Avail- ability, Reliability and Security, ser. ARES ’17, ACM, 2017, 7:1–7:10. [5] C. Shepherd, F. A. P. Petitcolas, R. N. Akram, and K. Markantonakis, “An Exploratory Analysis of the Security Risks of the Internet of Things in Finance”, in Proceedings of the 14th International Conference on Trust and Privacy in Digital Business, ser. TrustBus ’17, Springer, 2017, pp. 164–179. [6] G. Haken, K. Markantonakis, I. Gurulian, C. Shepherd, and R. N. Akram, “Evaluation of Apple iDevice Sensors As a Potential Relay Attack Coun- termeasure for Apple Pay”, in Proceedings of the 3rd ACM Workshop on Cyber-Physical System Security, ser. CPSS ’17, ACM, 2017, pp. 21–32. [7] I. Gurulian, C. Shepherd, E. Frank, K. Markantonakis, R. N. Akram, and K. Mayes, “On the Effectiveness of Ambient Sensing for NFC-based Prox- imity Detection by Applying Relay Attack Data”, in Proceedings of the 16th IEEE International Conference on Trust, Security and Privacy in Computing and Communications, ser. TrustCom ’17, IEEE, 2017. 10 [8] I. Gurulian, K. Markantonakis, C. Shepherd, E. Frank, and R. N. Akram, “Proximity Assurances Based on Natural and Artificial Ambient Environ- ments (Invited Paper)”, in Proceedings of the 10th International Conference on Innovative Security Solutions for Information Technology and Communications, ser. SECITC ’17, Springer, 2017. [9] C. Shepherd, R. N. Akram, and K. Markantonakis, “EmLog: Tamper- Resistant System Logging for Constrained Devices with TEEs”, in Proceed- ings of the 11th IFIP International Conference on Information Security Theory and Practice, ser. WISTP ’17, Springer, 2018. [10] ——, “Remote Credential Management with Mutual Attestation for Trusted Execution Environments (In Press)”, in Proceedings of the 12th IFIP Interna- tional Conference on Information Security Theory and Practice, ser. WISTP ’18, Springer, 2019. 11 Contents Declaration of Authorship3 Abstract5 Acknowledgements7 Publications9 1 Introduction 23 1.1 Motivation................................ 24 1.2 Thesis Outline and Contributions................... 27 2 Background 31 2.1 Mobile and Embedded System Architectures............ 31 2.1.1 System-on-Chip (SoC)..................... 32 2.1.2 System-in-Package (SiP) and Package-on-Package (PoP). 35 2.1.3 Microcontroller (MCU)..................... 36 2.1.4 Single-Board Computer (SBC)................ 37 2.1.5 Discussion............................ 37 2.2 Secure Execution Platforms...................... 38 2.2.1 Common Criteria........................ 39 2.2.2 Smart Cards........................... 39 2.2.3 Secure Elements (SEs)..................... 41 2.2.4 Java Card............................ 41 2.2.5 Host-based Card Emulation (HCE).............. 42 2.3 Trusted Platform Module (TPM)................... 43 2.3.1 Measured Boot......................... 44 2.3.2 Remote Attestation....................... 45 2.3.3 Binding and Sealing for Secure Storage........... 46 2.3.4 TCG TPM 1.2 and 2.0...................... 46 2.4 Trusted Execution Environments (TEEs)............... 47 2.4.1 TPM-backed Virtualisation.................. 48 2.4.2 Microsoft Palladium...................... 51 2.4.3 Texas Instruments M-Shield.................. 52 2.4.4 ARM TrustZone......................... 52 12 2.4.5 Nokia On-board Credentials (ObC)............. 55 2.4.6 Intel Software Guard eXtensions (SGX)........... 56 2.4.7 GlobalPlatform TEE...................... 59 2.5 Feature Comparison.......................... 65 2.5.1 On-Device Adversary..................... 65 2.5.2 Off-Device Adversary..................... 66 2.5.3