MicroTEE:基于微内核架构的TEE OS设计
MicroTEE: Designing TEE OS Based on the Microkernel Architecture
摘要:
ARM TrustZone技术广泛用于为移动设备提供可信执行环境(TEE)。然而,大多数TEE OS被实现为单片内核。在这样的设计中,设备驱动程序、内核服务和内核模块都运行在内核中,这导致了内核的庞大。单片内核架构很难保证内核的所有组件都没有安全漏洞,如高通QSEE TrustZone中的整数溢出漏洞、华为海思TEE架构中的TZDriver漏洞等。本文介绍了MicroTEE,一个基于微内核架构的TEE操作系统。在MicroTEE中,微内核为TEE操作系统的基本服务(如密码服务和平台密钥管理服务)提供了强隔离。内核只负责提供核心服务,如地址空间管理、线程管理和进程间通信。其他基本服务,如加密服务和平台密钥管理服务,在用户层实现为应用程序。加密服务和密钥管理用于为可信应用程序(TA)提供敏感信息加密、数据签名和平台证明功能。我们的设计避免了整个TEE操作系统的妥协,如果只有一个内核服务是脆弱的。还添加了一个监视器来执行安全世界和正常世界之间的切换。最后,在飞思卡尔i.MX6Q Sabre Lite开发板上实现了一个MicroTEE原型,并对其性能进行了测试。测试结果表明,在数据量较小的情况下,MicroTEE的密码操作性能优于Linux。
英文摘要:
ARM TrustZone technology is widely used to provide Trusted Execution Environments (TEE) for mobile devices. However, most TEE OSes are implemented as monolithic kernels. In such designs, device drivers, kernel services and kernel modules all run in the kernel, which results in large size of the kernel. It is difficult to guarantee that all components of the kernel have no security vulnerabilities in the monolithic kernel architecture, such as the integer overflow vulnerability in Qualcomm QSEE TrustZone and the TZDriver vulnerability in HUAWEI Hisilicon TEE architecture. This paper presents MicroTEE, a TEE OS based on the microkernel architecture. In MicroTEE, the microkernel provides strong isolation for TEE OS's basic services, such as crypto service and platform key management service. The kernel is only responsible for providing core services such as address space management, thread management, and inter-process communication. Other fundamental services, such as crypto service and platform key management service are implemented as applications at the user layer. Crypto Services and Key Management are used to provide Trusted Applications (TAs) with sensitive information encryption, data signing, and platform attestation functions. Our design avoids the compromise of the whole TEE OS if only one kernel service is vulnerable. A monitor has also been added to perform the switch between the secure world and the normal world. Finally, we implemented a MicroTEE prototype on the Freescale i.MX6Q Sabre Lite development board and tested its performance. Evaluation results show that the performance of cryptographic operations in MicroTEE is better than it in Linux when the size of data is small.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。