T-KVM : A Trusted architecture for KVM ARM v 7 and v 8 Virtual Machines Securing Virtual Machines by means of KVM , TrustZone , TEE and SELinux

Michele Paolino,A. Rigo,A. Spyridakis,J. Fanguede,Petar Lalov,D. Raho
Abstract:The first market release of Advanced RISC Machines (ARM) v8 System on Chips (SoCs) has created big expectations from smart devices, servers and network equipment vendors, who see compelling advantages in integrating them into their systems. As a consequence software stack deployments for ARMv8 platforms translate market requirements to support OpenStack, Network Functions Virtualization (NFV), Mobile Edge Computing (MEC), In-Vehicle Infotainment (IVI) automotive functions. At the same time, ARMv8 will empower Internet of Things (IoT), Cyber Physical Systems (CPS) and user convergence devices. In this context, virtualization is a key feature to enable the cloud delivery model, to implement multitenancy, to isolate different execution environments and to improve hardware/software standardization and consolidation. Since guaranteeing a strict ownership of both the data and the code executed in Virtual Machines (VMs), which belong to governments, companies, telecom operators and private users, counts more than ever, the security of the hypervisor and its guests has become dramatically important. In this paper, Trusted Kernel-based Virtual Machine (T-KVM), a novel security architecture for the KVM-on-ARM hypervisor, is proposed to satisfy the current market trend. T-KVM integrates software and hardware components to secure guest Operating Systems (OSes) and enable Trusted Computing in ARM virtual machines. The proposed architecture combines four isolation layers: ARM Virtualization and Security Extensions (also known as ARM VE and TrustZone), GlobalPlatform Trusted Execution Environment (TEE) APIs and SELinux Mandatory Access Control (MAC) security policy. The T-KVM architecture can be implemented on platforms based on ARM v7 and v8 architectures, without requiring additional custom hardware extensions, since, starting from Cortex-A15 (ARM v7 architecture) released in 2012, both the ARM VE and TrustZone are made available. In this paper the T-KVM architecture is described in details, as well as its key implementation challenges and system security considerations. Lastly, a performance evaluation of the proposed solution is presented. Keywords–Trusted KVM, KVM Security, ARMv8 Trusted Computing, KVM TrustZone, ARM Virtualization, SELinux, TEE, ARM VMs Security.
What problem does this paper attempt to address?