Table of Contents
Fetching ...

FRAMER/Miu: Tagged Pointer-based Capability and Fundamental Cost of Memory Safety & Coherence (Position Paper)

Myoung Jin Nam

TL;DR

FRAMER/Miu tackles memory-safety correctness under practical performance constraints by combining tagged pointers with per-object metadata to enable inline checks, while aiming to preserve coherence in non-coherent accelerator environments. The framework emphasizes wrapper-frame based metadata locality, two tag-encoding modes (slot-offset for small frames and shadow-table references for large frames), and in-frame pointer arithmetic checks to maintain efficiency. To reduce overhead, it explores hardware-assisted tagged-pointer strategies such as ARMv8's TopByteIgnore and customized ISA extensions, and expands security policies to include type confusion checks and coherence enforcement, with future work on garbage collection, dangling pointers, and happens-before analysis. This work positions FRAMER/Miu as a practical path toward production memory safety and coherence guarantees, balancing performance, interoperability, and detection coverage across software and hardware design spaces.

Abstract

Ensuring system correctness, such as memory safety, can eliminate security vulnerabilities that attackers could exploit in the first place. However, high and unpredictable performance degradation remains a primary challenge. Recognizing that it is extremely difficult to achieve complete system correctness for production deployment, researchers make trade-offs between performance, detection coverage, interoperability, precision, and detection timing. This research strikes a balance between comprehensive system protection and the costs required to obtain it, identifies the desirable roles of software and hardware, and presents a tagged pointer-based capability system as a stand-alone software solution and a prototype for future hardware design. This paper presents follow-up plans for the FRAMER/Miu generic framework to achieve these goals.

FRAMER/Miu: Tagged Pointer-based Capability and Fundamental Cost of Memory Safety & Coherence (Position Paper)

TL;DR

FRAMER/Miu tackles memory-safety correctness under practical performance constraints by combining tagged pointers with per-object metadata to enable inline checks, while aiming to preserve coherence in non-coherent accelerator environments. The framework emphasizes wrapper-frame based metadata locality, two tag-encoding modes (slot-offset for small frames and shadow-table references for large frames), and in-frame pointer arithmetic checks to maintain efficiency. To reduce overhead, it explores hardware-assisted tagged-pointer strategies such as ARMv8's TopByteIgnore and customized ISA extensions, and expands security policies to include type confusion checks and coherence enforcement, with future work on garbage collection, dangling pointers, and happens-before analysis. This work positions FRAMER/Miu as a practical path toward production memory safety and coherence guarantees, balancing performance, interoperability, and detection coverage across software and hardware design spaces.

Abstract

Ensuring system correctness, such as memory safety, can eliminate security vulnerabilities that attackers could exploit in the first place. However, high and unpredictable performance degradation remains a primary challenge. Recognizing that it is extremely difficult to achieve complete system correctness for production deployment, researchers make trade-offs between performance, detection coverage, interoperability, precision, and detection timing. This research strikes a balance between comprehensive system protection and the costs required to obtain it, identifies the desirable roles of software and hardware, and presents a tagged pointer-based capability system as a stand-alone software solution and a prototype for future hardware design. This paper presents follow-up plans for the FRAMER/Miu generic framework to achieve these goals.
Paper Structure (17 sections, 4 figures)

This paper contains 17 sections, 4 figures.

Figures (4)

  • Figure 1: FRAMER/Miu framework
  • Figure 2: FRAMER's wrapper frame and tagged pointer. FRAMER places per-object metadata (MD) near its object and tags a pointer with (1) a flag indicating the object's wrapper frame size (ON, if smaller than the slot size) and (2) a tag holding the relative location to MD. During memory access, FRAMER derives a metadata pointer (q) solely from a tagged pointer p, which contains an arbitrary address and tag.
  • Figure 3: Calculation of a wrapper frame for an object with lower and upper bounds
  • Figure 4: FRAMER's in-frame checking at pointer arithmetic. To detect pointers going out of reference frame (e.g., a pointer p"), FRAMER performs XOR operation with a source and result pointer at pointer arithmetic.