CyberGlossary

Vulnerabilidades

Vulnerabilidad de desbordamiento de pila

También conocido como: Stack smashing

Definición

Desbordamiento de búfer en la pila del programa que normalmente sobrescribe la dirección de retorno guardada o punteros locales para redirigir la ejecución.

El desbordamiento de pila es el arquetipo histórico de los exploits de corrupción de memoria: una escritura sin comprobaciones en un búfer en pila sobrepasa hasta el frame pointer o la dirección de retorno guardada, permitiendo al atacante redirigir el flujo a bytes controlados (shellcode o gadgets ROP). Las defensas incluyen canarios de pila (StackGuard, /GS), pilas no ejecutables (DEP/NX), aleatorización del espacio de direcciones (ASLR), shadow stacks e Intel CET, además de FORTIFY_SOURCE y funciones de cadena más seguras. Pese a décadas de mitigaciones, siguen apareciendo desbordamientos de pila clásicos en firmware, IoT y software heredado, siendo asuntos recurrentes en CVEs y retos CTF.

Ejemplos

  • CVE-2003-0352 (DCOM RPC): el gusano Blaster aprovechó un desbordamiento de pila.
  • CVE-2019-0708 (BlueKeep): desbordamiento de pila en el servicio de Escritorio Remoto.

Términos relacionados