Bitmap-Based Security Monitoring for Deeply Embedded Systems

被引:0
作者
Peng, Anni [1 ]
Fang, Dongliang [2 ]
Guan, Le [3 ]
Van Der Kouwe, Erik [4 ]
Li, Yin [1 ]
Wang, Wenwen [3 ]
Sun, Limin [2 ]
Zhang, Yuqing [1 ]
机构
[1] UCAS, Natl Comp Network Intrus Protect Ctr, Beijing, Peoples R China
[2] UCAS, CAS, Inst Informat Engn, Beijing, Peoples R China
[3] Univ Georgia, Athens, GA USA
[4] Vrije Univ Amsterdam, Amsterdam, Netherlands
关键词
CFI; DFI; microcontroller; TEE; CONTROL FLOW INTEGRITY;
D O I
10.1145/3672460
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Deeply embedded systems powered by microcontrollers are becoming popular with the emergence of Internetof-Things (IoT) technology. However, these devices primarily run C/C++ code and are susceptible to memory bugs, which can potentially lead to both control data attacks and non-control data attacks. Existing defense mechanisms (such as control-flow integrity (CFI), dataflow integrity (DFI) and write integrity testing (WIT), etc.) consume a massive amount of resources, making them less practical in real products. To make it lightweight, we design a bitmap-based allowlist mechanism to unify the storage of the runtime data for protecting both control data and non-control data. The memory requirements are constant and small, regardless of the number of deployed defense mechanisms. We store the allowlist in the TrustZone to ensure its integrity and confidentiality. Meanwhile, we perform an offline analysis to detect potential collisions and make corresponding adjustments when it happens. We have implemented our idea on an ARM Cortex-M-based development board. Our evaluation results show a substantial reduction in memory consumption when deploying the proposed CFI and DFI mechanisms, without compromising runtime performance. Specifically, our prototype enforces CFI and DFI at a cost of just 2.09% performance overhead and 32.56% memory overhead on average.
引用
收藏
页数:31
相关论文
共 82 条
[1]  
Abadi M., 2005, Proceedings of the 12th ACM Conference on Computer and Communications Security, P340
[2]   Control-Flow Integrity Principles, Implementations, and Applications [J].
Abadi, Martin ;
Budiu, Mihai ;
Erlingsson, Ulfar ;
Ligatti, Jay .
ACM TRANSACTIONS ON INFORMATION AND SYSTEM SECURITY, 2009, 13 (01)
[3]   Challenges in Designing Exploit Mitigations for Deeply Embedded Systems [J].
Abbasi, Ali ;
Wetzels, Jos ;
Holz, Thorsten ;
Etalle, Sandro .
2019 4TH IEEE EUROPEAN SYMPOSIUM ON SECURITY AND PRIVACY (EUROS&P), 2019, :31-46
[4]  
Abbasi A, 2016, P1
[5]   C-FLAT: Control-Flow Attestation for Embedded Systems Software [J].
Abera, Tigist ;
Asokan, N. ;
Davi, Lucas ;
Ekberg, Jan-Erik ;
Nyman, Thomas ;
Paverd, Andrew ;
Sadeghi, Ahmad-Reza ;
Tsudik, Gene .
CCS'16: PROCEEDINGS OF THE 2016 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2016, :743-754
[6]   Preventing memory error exploits with WIT [J].
Akritidis, Periklis ;
Cadar, Cristian ;
Raiciu, Costin ;
Costa, Manuel ;
Castro, Miguel .
PROCEEDINGS OF THE 2008 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, 2008, :263-+
[7]   μRAI: Securing Embedded Systems with Return Address Integrity [J].
Almakhdhub, Naif Saleh ;
Clements, Abraham A. ;
Bagchi, Saurabh ;
Payer, Mathias .
27TH ANNUAL NETWORK AND DISTRIBUTED SYSTEM SECURITY SYMPOSIUM (NDSS 2020), 2020,
[8]  
ARM Ltd, 2024, Discovery Kit with STM32L562QE MCU
[9]  
ARM Ltd, 2023, ARM Cortex-M Programming Guide to Memory Barrier Instructions
[10]  
ARM Ltd, 2021, Armv8-M Architecture Reference Manual