Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 1058

SMEP / SMAP

Qu'est-ce que SMEP / SMAP ?

SMEP / SMAPSMEP et SMAP sont des fonctions du processeur qui empechent le noyau d'executer ou d'acceder aux pages utilisateur, bloquant les techniques courantes d'elevation de privileges locale.


Supervisor Mode Execution Prevention (SMEP) et Supervisor Mode Access Prevention (SMAP) sont des fonctions x86_64 introduites par Intel sur Ivy Bridge (SMEP, 2012) et Broadwell (SMAP, 2014) ; ARM propose les equivalents PXN et PAN. SMEP fait lever une faute par le processeur si le noyau tente d'executer des instructions depuis une page mappee en utilisateur, neutralisant les attaques ret2usr. SMAP leve une faute sur toute lecture ou ecriture du noyau vers des pages utilisateur, sauf si EFLAGS.AC est temporairement positionne via stac/clac (Linux : wrappers copy_from_user). Ensemble, ils ferment une large classe d'exploitations du noyau et completent KASLR, kCFI, KPTI et CET.

Exemples

  1. 01

    Sur un CPU avec SMEP, un exploit noyau provoque #PF en sautant vers du shellcode en espace utilisateur.

  2. 02

    Sous Linux avec SMAP, copy_from_user utilise stac/clac pour acceder aux tampons utilisateur.

Questions fréquentes

Qu'est-ce que SMEP / SMAP ?

SMEP et SMAP sont des fonctions du processeur qui empechent le noyau d'executer ou d'acceder aux pages utilisateur, bloquant les techniques courantes d'elevation de privileges locale. Cette notion relève de la catégorie Sécurité applicative en cybersécurité.

Que signifie SMEP / SMAP ?

SMEP et SMAP sont des fonctions du processeur qui empechent le noyau d'executer ou d'acceder aux pages utilisateur, bloquant les techniques courantes d'elevation de privileges locale.

Comment fonctionne SMEP / SMAP ?

Supervisor Mode Execution Prevention (SMEP) et Supervisor Mode Access Prevention (SMAP) sont des fonctions x86_64 introduites par Intel sur Ivy Bridge (SMEP, 2012) et Broadwell (SMAP, 2014) ; ARM propose les equivalents PXN et PAN. SMEP fait lever une faute par le processeur si le noyau tente d'executer des instructions depuis une page mappee en utilisateur, neutralisant les attaques ret2usr. SMAP leve une faute sur toute lecture ou ecriture du noyau vers des pages utilisateur, sauf si EFLAGS.AC est temporairement positionne via stac/clac (Linux : wrappers copy_from_user). Ensemble, ils ferment une large classe d'exploitations du noyau et completent KASLR, kCFI, KPTI et CET.

Comment se défendre contre SMEP / SMAP ?

Les défenses contre SMEP / SMAP combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.

Quels sont les autres noms de SMEP / SMAP ?

Noms alternatifs courants : SMEP, SMAP, PXN, PAN.

Termes liés