Efficient Subobject-granularity Spatial Memory Safety Enforcement with In-fat Pointer
Auteur : Shengjie Xu
Date de publication : 2021
Éditeur : University of Toronto
Nombre de pages : Non disponible
Résumé du livre
Lack of memory safety in programming languages like C and C++ can leave programs written in these languages with exploitable memory corruption vulnerabilities. Spatial memory safety defense can catch memory corruptions from out-of-bounds pointer arithmetic. However, none of the existing works can achieve low overhead, high compatibility, and fine-grained protection at the same time. This thesis presents In-Fat Pointer, a hardware-assisted spatial memory safety defense that improves the protection granularity of existing tagged-pointer schemes using object metadata to subobject-bound granularity while maintaining their high compatibility and low overhead. In-Fat Pointer introduces multiple object metadata schemes to spare pointer tag bits from object metadata lookup, and use the spared bits with in-memory type metadata for subobject bound computation. The hardware prototype is implemented on an FGPA board, and In-Fat Pointer is evaluated in functionality, runtime and memory performance, and estimated hardware cost.