Jan-Alexandru Vaduva, Stefan Dascalu, Iulia-Maria Florea, Iulia Culic, R. Rughinis
{"title":"SPROBES机制在TrustZone架构上的观察","authors":"Jan-Alexandru Vaduva, Stefan Dascalu, Iulia-Maria Florea, Iulia Culic, R. Rughinis","doi":"10.1109/CSCS.2019.00057","DOIUrl":null,"url":null,"abstract":"In this paper we try to reproduce the results described in the paper \"SPROBES: Enforcing Kernel Code Integrity on the TrustZone Architecture\" [1]. The implementation revolves around the idea of protecting the operating system against rootkits with minimum overhead. This is described as an introspection mechanism implemented through TrustZone Secure Monitor Calls (SMC) and handled in secure world. It can instrument any operating system instruction. Since the challenge with this implementation was to avoid being removed by a rootkit, five invariants were enforced and considered to be enough to protect the operating system. This implementation was done on a Linux kernel 2.6.38 and used only 12 such SPROBES. As the original article was written the ARM market is expanding further and further with TrustZone extension now available even on the M series cortex systems. In addition to smartphones as described in previous article, the TrustZone extension is found in a lot of IoT device, such as RaspberryPi and in high-end devices. We try to reimplement the above-mentioned work on a new 4.9 Linux kernel and latest arm-trusted-firmware implementation for a reference ARM 64 hardware in order to identify if it could prove a viable software solution Also we provide feedback and observations for this whole process.","PeriodicalId":352411,"journal":{"name":"2019 22nd International Conference on Control Systems and Computer Science (CSCS)","volume":"130 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Observations over SPROBES Mechanism on the TrustZone Architecture\",\"authors\":\"Jan-Alexandru Vaduva, Stefan Dascalu, Iulia-Maria Florea, Iulia Culic, R. Rughinis\",\"doi\":\"10.1109/CSCS.2019.00057\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In this paper we try to reproduce the results described in the paper \\\"SPROBES: Enforcing Kernel Code Integrity on the TrustZone Architecture\\\" [1]. The implementation revolves around the idea of protecting the operating system against rootkits with minimum overhead. This is described as an introspection mechanism implemented through TrustZone Secure Monitor Calls (SMC) and handled in secure world. It can instrument any operating system instruction. Since the challenge with this implementation was to avoid being removed by a rootkit, five invariants were enforced and considered to be enough to protect the operating system. This implementation was done on a Linux kernel 2.6.38 and used only 12 such SPROBES. As the original article was written the ARM market is expanding further and further with TrustZone extension now available even on the M series cortex systems. In addition to smartphones as described in previous article, the TrustZone extension is found in a lot of IoT device, such as RaspberryPi and in high-end devices. We try to reimplement the above-mentioned work on a new 4.9 Linux kernel and latest arm-trusted-firmware implementation for a reference ARM 64 hardware in order to identify if it could prove a viable software solution Also we provide feedback and observations for this whole process.\",\"PeriodicalId\":352411,\"journal\":{\"name\":\"2019 22nd International Conference on Control Systems and Computer Science (CSCS)\",\"volume\":\"130 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-05-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2019 22nd International Conference on Control Systems and Computer Science (CSCS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/CSCS.2019.00057\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 22nd International Conference on Control Systems and Computer Science (CSCS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CSCS.2019.00057","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Observations over SPROBES Mechanism on the TrustZone Architecture
In this paper we try to reproduce the results described in the paper "SPROBES: Enforcing Kernel Code Integrity on the TrustZone Architecture" [1]. The implementation revolves around the idea of protecting the operating system against rootkits with minimum overhead. This is described as an introspection mechanism implemented through TrustZone Secure Monitor Calls (SMC) and handled in secure world. It can instrument any operating system instruction. Since the challenge with this implementation was to avoid being removed by a rootkit, five invariants were enforced and considered to be enough to protect the operating system. This implementation was done on a Linux kernel 2.6.38 and used only 12 such SPROBES. As the original article was written the ARM market is expanding further and further with TrustZone extension now available even on the M series cortex systems. In addition to smartphones as described in previous article, the TrustZone extension is found in a lot of IoT device, such as RaspberryPi and in high-end devices. We try to reimplement the above-mentioned work on a new 4.9 Linux kernel and latest arm-trusted-firmware implementation for a reference ARM 64 hardware in order to identify if it could prove a viable software solution Also we provide feedback and observations for this whole process.