Aller au contenu
uencoder

Buffer Overflow

Un dépassement de tampon survient quand un programme écrit dans un tampon de taille fixe plus de données qu'il ne peut en contenir, écrasant la mémoire adjacente et pouvant provoquer des plantages ou l'exécution de code.

Objectif

Comprendre et se défendre contre les vulnérabilités de sûreté mémoire, le type de défaut de sécurité le plus courant dans les programmes C/C++.

Mécanisme

Écrire plus d'octets que la longueur allouée dans un tampon de pile/tas écrase la mémoire adjacente (adresses de retour, autres variables). Un attaquant peut écraser une adresse de retour pour sauter vers un shellcode. Défenses : vérification des bornes, ASLR, canaris de pile, DEP/NX.

Cas d’usage

  • Audit de sécurité C/C++
  • Analyse d'exploits
  • Défense de la sûreté mémoire

Outils associés

References