Multi-Tag: A Hardware-Software Co-Design for Memory Safety based on Multi-Granular Memory Tagging

被引:2
|
作者
Unterguggenberger, Martin [1 ]
Schrammel, David [1 ]
Nasahl, Pascal [1 ]
Schilling, Robert [1 ]
Lamster, Lukas [1 ]
Mangard, Stefan [1 ]
机构
[1] Graz Univ Technol, Graz, Austria
来源
PROCEEDINGS OF THE 2023 ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, ASIA CCS 2023 | 2023年
关键词
Memory Safety; Tagged Memory Architecture; Multi-Granular Tags; ARCHITECTURAL SUPPORT;
D O I
10.1145/3579856.3590331
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Memory safety vulnerabilities are a severe threat to modern computer systems allowing adversaries to leak or modify securitycritical data. To protect systems from this attack vector, full memory safety is required. As software-based countermeasures tend to induce significant runtime overheads, which is not acceptable for production code, hardware assistance is needed. Tagged memory architectures, e.g., already offered by the ARM MTE and SPARC ADI extensions, assign meta-information to memory objects, thus allowing to implement memory safety policies. However, due to the high tag collision probability caused by the small tag sizes, the protection guarantees of these schemes are limited. This paper presents Multi-Tag, the first hardware-software co-design utilizing a multi-granular tagging structure that provides strong protection against spatial and temporal memory safety violations. By combining object-granular memory tags with pagegranular tags stored in the page table entries, Multi-Tag overcomes the limitation of small tag sizes. Introducing page-granular tags significantly enhances the probabilistic protection capabilities of memory tagging without increasing the memory overhead or the system's complexity. We develop a prototype implementation comprising a gem5 model of the tagged architecture, a Linux kernel extension, and an LLVM-based compiler toolchain. The simulated performance overhead for the SPEC CPU2017 and nbench-byte benchmarks highlights the practicability of our design.
引用
收藏
页码:177 / 189
页数:13
相关论文
共 50 条
  • [31] Enclavisor: A Hardware-Software Co-Design for Enclaves on Untrusted Cloud
    Gu, Jinyu
    Wu, Xinyue
    Zhu, Bojun
    Xia, Yubin
    Zang, Binyu
    Guan, Haibing
    Chen, Haibo
    IEEE TRANSACTIONS ON COMPUTERS, 2021, 70 (10) : 1598 - 1611
  • [32] A novel hardware-software co-design for automatic white balance
    Chen, Chin-Hsing
    Tan, Sun-Yen
    Huang, Wen-Tzeng
    LECTURE NOTES IN SIGNAL SCIENCE, INTERNET AND EDUCATION (SSIP'07/MIV'07/DIWEB'07), 2007, : 203 - +
  • [33] Hardware-software co-design of resource constrained systems on a chip
    Thepayasuwan, N
    Doboli, A
    24TH INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS WORKSHOPS, PROCEEDINGS, 2004, : 818 - 823
  • [34] Speed optimization of AES algorithm with Hardware-Software Co-design
    Dixit, Preeti
    Zalke, Jitendra
    Admane, Sharmik
    2017 2ND INTERNATIONAL CONFERENCE FOR CONVERGENCE IN TECHNOLOGY (I2CT), 2017, : 793 - 798
  • [35] Hardware-software co-design of an automatic fingerprint acquisition system
    Fons, M
    Fons, F
    Canyellas, N
    Cantó, E
    López, M
    ISIE 2005: Proceedings of the IEEE International Symposium on Industrial Electronics 2005, Vols 1- 4, 2005, : 1123 - 1128
  • [36] APPROXIMATE COMPUTING: Unlocking Efficiency with Hardware-Software Co-Design
    Ceze, Luis
    Sampson, Adrian
    GETMOBILE-MOBILE COMPUTING & COMMUNICATIONS REVIEW, 2016, 20 (03) : 12 - 16
  • [37] BTPA: Hardware-Software Co-design for Bitwise based Transformer with Parallelized Accelerator
    Zhang, Junkai
    Duan, Gaoxiang
    Huang, Zunkai
    Wang, Hui
    Zhu, Yongxin
    PROCEEDINGS OF THE 2024 IEEE 10TH IEEE INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE AND SMART COMPUTING, HPSC 2024, 2024, : 100 - 104
  • [38] Using FIFOs in hardware-software co-design for FPGA based embedded systems
    Ross, C
    Bohm, W
    12TH ANNUAL IEEE SYMPOSIUM ON FIELD-PROGRAMMABLE CUSTOM COMPUTING MACHINES, PROCEEDINGS, 2004, : 318 - 319
  • [39] Hardware-Software Co-design for BLDC Motor Speed Controller Design
    Alecsa, Bogdan
    Onea, Alexandru
    ADVANCED MATERIALS RESEARCH II, PTS 1 AND 2, 2012, 463-464 : 1256 - +
  • [40] HAAC: A Hardware-Software Co-Design to Accelerate Garbled Circuits
    Mo, Jianqiao
    Gopinath, Jayanth
    Reagen, Brandon
    PROCEEDINGS OF THE 2023 THE 50TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, ISCA 2023, 2023, : 128 - 140