Visible to the public Biblio

Filters: Keyword is Runtime environment  [Clear All Filters]
2023-02-17
Shi, Jiameng, Guan, Le, Li, Wenqiang, Zhang, Dayou, Chen, Ping, Zhang, Ning.  2022.  HARM: Hardware-Assisted Continuous Re-randomization for Microcontrollers. 2022 IEEE 7th European Symposium on Security and Privacy (EuroS&P). :520–536.
Microcontroller-based embedded systems have become ubiquitous with the emergence of IoT technology. Given its critical roles in many applications, its security is becoming increasingly important. Unfortunately, MCU devices are especially vulnerable. Code reuse attacks are particularly noteworthy since the memory address of firmware code is static. This work seeks to combat code reuse attacks, including ROP and more advanced JIT-ROP via continuous randomization. Previous proposals are geared towards full-fledged OSs with rich runtime environments, and therefore cannot be applied to MCUs. We propose the first solution for ARM-based MCUs. Our system, named HARM, comprises a secure runtime and a binary analysis tool with rewriting module. The secure runtime, protected inside the secure world, proactively triggers and performs non-bypassable randomization to the firmware running in a sandbox in the normal world. Our system does not rely on any firmware feature, and therefore is generally applicable to both bare-metal and RTOS-powered firmware. We have implemented a prototype on a development board. Our evaluation results indicate that HARM can effectively thaw code reuse attacks while keeping the performance and energy overhead low.
2022-08-26
Xu, Chao, Cheng, Yiqing, Cheng, Weihua, Ji, Shen, Li, Wei.  2021.  Security Protection Scheme of Embedded System Running Environment based on TCM. 2021 2nd International Seminar on Artificial Intelligence, Networking and Information Technology (AINIT). :636–641.
Mobile embedded terminals widely applied in individual lives, but its security threats become more and more serious. Malicious attacker can steal sensitive information such as user’s phonebook, credit card information by instrumenting malicious programs, or compromising vulnerable software. Against these problems, this paper proposes a scheme for trusted protection system on the embedded platform. The system uses SM algorithms and hardware security chip as the root of trust to establish security mechanisms, including trusted boot of system image, trusted monitoring of the system running environment, disk partition encryption and verification, etc. These security mechanisms provide comprehensive protection to embedded system boot, runtime and long-term storage devices. This paper introduces the architecture and principles of the system software, design system security functions and implement prototype system for protection of embedded OS. The experiments results indicates the promotion of embedded system security and the performance test shows that encryption performance can meet the practical application.
2022-08-12
Khan, Muhammad Taimoor, Serpanos, Dimitrios, Shrobe, Howard.  2021.  Towards Scalable Security of Real-time Applications: A Formally Certified Approach. 2021 26th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA ). :01—04.
In this paper, we present our ongoing work to develop an efficient and scalable verification method to achieve runtime security of real-time applications with strict performance requirements. The method allows to specify (functional and non-functional) behaviour of a real-time application and a set of known attacks/threats. The challenge here is to prove that the runtime application execution is at the same time (i) correct w.r.t. the functional specification and (ii) protected against the specified set of attacks, without violating any non-functional specification (e.g., real-time performance). To address the challenge, first we classify the set of attacks into computational, data integrity and communication attacks. Second, we decompose each class into its declarative properties and definitive properties. A declarative property specifies an attack as a one big-step relation between initial and final state without considering intermediate states, while a definitive property specifies an attack as a composition of many small-step relations considering all intermediate states between initial and final state. Semantically, the declarative property of an attack is equivalent to its corresponding definitive property. Based on the decomposition and the adequate specification of underlying runtime environment (e.g., compiler, processor and operating system), we prove rigorously that the application execution in a particular runtime environment is protected against declarative properties without violating runtime performance specification of the application. Furthermore, from the specification, we generate a security monitor that assures that the application execution is secure against each class of attacks at runtime without hindering real-time performance of the application.
2022-07-29
Ménétrey, Jämes, Pasin, Marcelo, Felber, Pascal, Schiavoni, Valerio.  2021.  Twine: An Embedded Trusted Runtime for WebAssembly. 2021 IEEE 37th International Conference on Data Engineering (ICDE). :205—216.
WebAssembly is an Increasingly popular lightweight binary instruction format, which can be efficiently embedded and sandboxed. Languages like C, C++, Rust, Go, and many others can be compiled into WebAssembly. This paper describes Twine, a WebAssembly trusted runtime designed to execute unmodified, language-independent applications. We leverage Intel SGX to build the runtime environment without dealing with language-specific, complex APIs. While SGX hardware provides secure execution within the processor, Twine provides a secure, sandboxed software runtime nested within an SGX enclave, featuring a WebAssembly system interface (WASI) for compatibility with unmodified WebAssembly applications. We evaluate Twine with a large set of general-purpose benchmarks and real-world applications. In particular, we used Twine to implement a secure, trusted version of SQLite, a well-known full-fledged embeddable database. We believe that such a trusted database would be a reasonable component to build many larger application services. Our evaluation shows that SQLite can be fully executed inside an SGX enclave via WebAssembly and existing system interface, with similar average performance overheads. We estimate that the performance penalties measured are largely compensated by the additional security guarantees and its full compatibility with standard WebAssembly. An indepth analysis of our results indicates that performance can be greatly improved by modifying some of the underlying libraries. We describe and implement one such modification in the paper, showing up to 4.1 × speedup. Twine is open-source, available at GitHub along with instructions to reproduce our experiments.
2022-01-10
Horst, Ulrich Ter, Hasberg, Hagen, Schulz, Stephan.  2021.  MicroPython-based Sensor Node with Asymmetric Encryption for Ubiquitous Sensor Networks. 2021 IEEE International IOT, Electronics and Mechatronics Conference (IEMTRONICS). :1–6.
This work introduces a new microcomputing node with long-term resistant data security, based on asymmetric and symmetric encryption combined with the modern and established scripting language Python. The presented microcomputing node integrates a MicroPython runtime environment to address a wide audience of application engineers as user base instead of a selected group of embedded engineers, who have deep knowledge in programming IoT devices using C/C++. It combines its scripting capabilities with security features of modern smartcards and secure cellular networking based on 4G.