Aller au contenu

Glossaire

ASLR

Address Space Layout Randomization : le système d'exploitation place la pile, le tas, les bibliothèques et l'exécutable à des adresses aléatoires à chaque exécution.

L'Address Space Layout Randomization (ASLR) rend imprévisible l'emplacement des régions mémoire d'un processus. La pile, le tas, la région mappée en mémoire, les bibliothèques partagées et, pour les exécutables indépendants de la position, le programme lui-même sont chargés à des adresses de base aléatoires à chaque démarrage du programme. Les attaques par corruption mémoire qui dépendent de la connaissance de l'emplacement du code ou des données échouent alors, ou nécessitent une fuite d'information supplémentaire.

Sous Linux, kernel.randomize_va_space=2 active la randomisation complète et constitue la valeur par défaut. Ses principales faiblesses sont les bugs de divulgation d'information, qui peuvent révéler la base d'un module, et les serveurs qui font des fork en partageant une même disposition entre les requêtes. Elle est la plus efficace combinée à PIE. Voir disposition mémoire d'un processus.