Published July 19, 2024 | Version ccs24-ae

CCS'24 Artifact: Safeslab: Mitigating Use-After-Free Vulnerabilities via Memory Protection Keys

Description

Temporal safety errors, such as use-after-free and double-free, are some of the most prevalent types of vulnerabilities discovered in modern systems software. We propose addressing them via Safeslab: a heap-hardening extension that aims to mitigate temporal errors via a novel and efficient address aliasing approach. Safeslab assigns multiple virtual aliases to each memory page in the system, and manages their access rights via the recently introduced Memory Protection Keys hardware extension, which is designed to provide a fast alternative to page tables for memory management. We developed a prototype of Safeslab for the Linux kernel and evaluated its performance and memory overhead via several benchmarks on the x86 architecture. We release Safeslab's source code as a research artifact using this repository, along with instructions on how to configure it, deploy it, and evaluate it. 

Files

safeslab-ccs24-ae.zip

Files (10.4 GB)

Name Size
md5:62528b6864700d6faa69c4ab404f1558
10.4 GB Preview Download