XFI is a comprehensive protection system that offers
both flexible access control and fundamental integrity
guarantees, at any privilege level and even for legacy
code in commodity systems. For this purpose, XFI combines
static analysis with inline software guards and a
two-stack execution model. We have implemented XFI
forWindows on the x86 architecture using binary rewriting
and a simple, stand-alone verifier; the implementations
correctness depends on the verifier, but not on the
rewriter. We have applied XFI to software such as device
drivers and multimedia codecs. The resulting modules
function safely within both kernel and user-mode address
spaces, with only modest enforcement overheads.