| | |
Summary: Verifying the Safety of User Pointer Dereferences
Suhabe Bugrara
Department of Computer Science
Stanford University
Stanford, CA 94305
suhabe@stanford.edu
Alex Aiken
Department of Computer Science
Stanford University
Stanford, CA 94305
aiken@stanford.edu
Abstract
Operating systems divide virtual memory addresses
into kernel space and user space. The interface of a
modern operating system consists of a set of system call
procedures that may take pointer arguments called user
pointers. It is safe to dereference a user pointer if and
only if it points into user space. If the operating system
dereferences a user pointer that does not point into user
space, then a malicious user application could gain con-
|