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
关键词
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 条
  • [21] Accelerating RTL Simulation with Hardware-Software Co-Design
    Elsabbagh, Fares
    Sheikhha, Shabnam
    Ying, Victor A.
    Nguyen, Quan M.
    Emer, Joel S.
    Sanchez, Daniel
    56TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE, MICRO 2023, 2023, : 153 - 166
  • [22] Hardware-software co-design of inspection robot system
    Bi F.
    Zhou G.
    Zhang C.
    Ji S.
    Peng L.
    Yan R.
    Zhongguo Shiyou Daxue Xuebao (Ziran Kexue Ban)/Journal of China University of Petroleum (Edition of Natural Science), 2024, 48 (03): : 180 - 187
  • [23] Hardware-Software Co-Design for Content-Based Sparse Attention
    Tang, Rui
    Zhang, Xiaoyu
    Liu, Rui
    Luo, Zhejian
    Chen, Xiaoming
    Han, Yinhe
    2023 IEEE 41ST INTERNATIONAL CONFERENCE ON COMPUTER DESIGN, ICCD, 2023, : 415 - 418
  • [24] Using the multi-threaded computation model as a unifying framework for hardware-software co-design and implementation
    Niehaus, D
    Andrews, D
    NINTH IEEE INTERNATIONAL WORKSHOP ON OBJECT-ORIENTED REAL-TIME DEPENDABLE SYSTEMS, 2004, : 317 - 324
  • [25] Prodigy: Improving the Memory Latency of Data-Indirect Irregular Workloads Using Hardware-Software Co-Design
    Talati, Nishil
    May, Kyle
    Behroozi, Armand
    Yang, Yichen
    Kaszyk, Kuba
    Vasiladiotis, Christos
    Verma, Tarunesh
    Li, Lu
    Nguyen, Brandon
    Sun, Jiawen
    Morton, John Magnus
    Ahmadi, Agreen
    Austin, Todd
    O'Boyle, Michael
    Mahlke, Scott
    Mudge, Trevor
    Dreslinski, Ronald
    2021 27TH IEEE INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE (HPCA 2021), 2021, : 654 - 667
  • [26] Hardware/Software Co-Design of Memory Page Translation for Mobile Virtualization
    Lee, Yuan-Cheng
    Hsueh, Chih-Wen
    IEEE TRANSACTIONS ON COMPUTERS, 2016, 65 (10) : 3070 - 3082
  • [27] Hardware-Software Co-Design for Brain-Computer Interfaces
    Karageorgos, Ioannis
    Sriram, Karthik
    Vesely, Jan
    Wu, Michael
    Powell, Marc
    Borton, David
    Manohar, Rajit
    Bhattacharjee, Abhishek
    2020 ACM/IEEE 47TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA 2020), 2020, : 391 - 404
  • [28] Hardware-Software Co-Design for Face Recognition on FPGA SoCs
    Wang, Hao
    Cao, Shan
    Xu, Shugong
    Zhang, Shunqing
    2020 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS), 2020,
  • [29] Hardware-Software Co-design Approach for Deep Learning Inference
    Paul, Debdeep
    Singh, Jawar
    Mathew, Jimson
    2019 7TH INTERNATIONAL CONFERENCE ON SMART COMPUTING & COMMUNICATIONS (ICSCC), 2019, : 118 - 122
  • [30] Hardware-software Co-design of Slimmed Optical Neural Networks
    Zhao, Zheng
    Liu, Derong
    Li, Meng
    Ying, Zhoufeng
    Zhang, Lu
    Xu, Biying
    Yu, Bei
    Chen, Ray T.
    Pan, David Z.
    24TH ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE (ASP-DAC 2019), 2019, : 705 - 710