Intel MPX Explained

A cross-layer dissection of the MPX system stack and comparison with software-based memory safety systems

What is Intel MPX?

In August 2015, Intel Memory Protection Extensions (Intel MPX) became available as part of the Skylake microarchitecture. The goal of MPX is to provide an efficient protection against memory errors and attacks. Here, by memory errors we understand errors that happen when a program reads from or writes to a different memory region than the one intended by the developer, e.g., buffer overflows and out-of-bounds accesses. A memory attack is a different view on the same problem—a scenario in which an adversary gains access to the region of memory not allowed for use.

This website presents results of our Intel MPX evaluation.

UPDATE: At this point, Intel MPX support is officially discontinued by GCC (Patch) and Linux (Patch). The technology won’t be available on the future Intel processors too (Announcement).


Looking for more information?