Publication
Towards multi-OS support on TrustZone-M MCUs
| 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 |
| 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.