Die Memory Protection Extensions (Intel MPX) waren eine Erweiterung der x86-Architektur von der Firma Intel um die Widerstandsfähigkeit von Software gegen Pufferüberläufe zu erhöhen.[1] Aufgrund von damit ausgelösten Schwierigkeiten in der praktischen Nutzung wurde von Intel die Erweiterung MPX ab dem Jahr 2020 für alle neuen Intel CPUs wieder eingestellt.[2] In Folge fehlender Unterstützung durch die Hardware wurde auch in vielen Software-Paketen, so diese zwischenzeitlich MPX unterstützten, MPX wieder entfernt.

Mit MPX werden vorab Zeigerreferenzen innerhalb der Software aufgespürt, die bei einem Pufferüberlauf zu Fehlfunktionen führen und damit eine Sicherheitslücke darstellen könnten. Hierzu sind auch Modifikationen in der Software wie beispielsweise am Compiler und im Betriebssystem nötig. Intel MPX wurde erstmals in der Intel-Skylake-Mikroarchitektur implementiert.

Softwareunterstützung Bearbeiten

Ab Linux-Kernel 3.19 bis zur Version 5.6 wird Intel MPX softwareseitig unterstützt.[3] Ab der Version 5.6 ist die MPX-Funktionalität kein Bestandteil des Kernels mehr.[4]

Einzelnachweise Bearbeiten

  1. Introduction to Intel Memory Protection Extensions, Intel, 16. Juli 2013
  2. Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 1: Basic Architecture. Intel, November 2020, section 2.5 (englisch, intel.com [abgerufen am 3. März 2021]).
  3. Supporting Intel MPX in Linux, LWN, 29. Januar 2014
  4. Michael Larabel: Intel MPX Support Is Dead With Linux 5.6. 31. Januar 2020, abgerufen am 30. Dezember 2023.