Publication

Towards multi-OS support on TrustZone-M MCUs

View document

Bibliographic Details
Summary:The technological developments are helping to spread and strengthen embedded and IoT markets. As a consequence, more and more portable devices have become part of our daily routines, having access to private and personal information. Naturally, security has become one of the most important requirements of these systems. Other requirements include, for instance, portability and energy efficiency. These devices normally perform more than one function/action, and usually, for each of those functions, a full operating system is responsible for its data processing. So, to fulfil all the mentioned requirements, operating systems (Operating System (OS)es) are deployed on arm low-end platforms, with Armv8-M pushing towards the, de facto, microprocessors architecture. The processor features the TrustZone technology that divides the execution into two states; a secure (almighty), and a non-secure (with no privileges) state. The OSes have their execution supervised by a monitor software, the hypervisor, that also manages the memory used by each OS. Modern low-end hypervisors only allow executing two OSes, where the priorities and permissions to each can be configured, sometimes giving to some OS the same permissions as the software monitors. The security of the system can be compromised if this privileged OS is attacked and starts to corrupt the data from the other OS. For addressing this problem, this MSc thesis proposes a multi-OS hypervisor in which every OS is executed from the less privileged (non-secure) state while the inactive ones have their information secured. This security by separation (i.e. time and space partitioning) is assured by the TrustZone security extension that prevents the executing OS to access unauthorized third-party information. The hypervisor, with the TrustZone features, is responsible to perform the scheduler and change memory proprieties. The results presented a highly secure hypervisor, where the OSes are completely isolated from each other.
Main Authors:Santos, Afonso Manuel Macedo dos
Subject:TrustZone Hypervisor OS ARMv8-M Multi-OS Low-end Engenharia e Tecnologia
Year:2020
Country:Portugal
Document type:master thesis
Access type:open access
Associated institution:Universidade do Minho
Language:English
Origin:RepositóriUM - Universidade do Minho
Description
Summary:The technological developments are helping to spread and strengthen embedded and IoT markets. As a consequence, more and more portable devices have become part of our daily routines, having access to private and personal information. Naturally, security has become one of the most important requirements of these systems. Other requirements include, for instance, portability and energy efficiency. These devices normally perform more than one function/action, and usually, for each of those functions, a full operating system is responsible for its data processing. So, to fulfil all the mentioned requirements, operating systems (Operating System (OS)es) are deployed on arm low-end platforms, with Armv8-M pushing towards the, de facto, microprocessors architecture. The processor features the TrustZone technology that divides the execution into two states; a secure (almighty), and a non-secure (with no privileges) state. The OSes have their execution supervised by a monitor software, the hypervisor, that also manages the memory used by each OS. Modern low-end hypervisors only allow executing two OSes, where the priorities and permissions to each can be configured, sometimes giving to some OS the same permissions as the software monitors. The security of the system can be compromised if this privileged OS is attacked and starts to corrupt the data from the other OS. For addressing this problem, this MSc thesis proposes a multi-OS hypervisor in which every OS is executed from the less privileged (non-secure) state while the inactive ones have their information secured. This security by separation (i.e. time and space partitioning) is assured by the TrustZone security extension that prevents the executing OS to access unauthorized third-party information. The hypervisor, with the TrustZone features, is responsible to perform the scheduler and change memory proprieties. The results presented a highly secure hypervisor, where the OSes are completely isolated from each other.

Funded activities

No funded projects found.