Memory Protection Extensions
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
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
- ↑ Introduction to Intel Memory Protection Extensions, Intel, 16. Juli 2013
- ↑ 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]).
- ↑ Supporting Intel MPX in Linux, LWN, 29. Januar 2014
- ↑ Michael Larabel: Intel MPX Support Is Dead With Linux 5.6. 31. Januar 2020, abgerufen am 30. Dezember 2023.
Betriebsmodi | Real Mode • Protected Mode • Virtual 8086 Mode • System Management Mode • Long Mode • Compatibility Mode |
Befehlssatzerweiterungen | x87 ⬝ PAE ⬝ NX ⬝ AMD64/Intel 64 (x64) ⬝ HTT ⬝ VT-x/AMD-V/VIA VT ⬝ 3DNow! ⬝ MMX ⬝ SSE ⬝ SSE2 ⬝ SSE3 ⬝ SSSE3 ⬝ SSE4 ⬝ SSE4a ⬝ |