Teoria del Buffer Overflow

El buffer overflow, o desbordamiento de buffer, es una vulnerabilidad en la que un programa, al escribir datos en un buffer (una sección de memoria reservada para almacenar datos), sobrepasa los límites de ese buffer y sobrescribe la memoria adyacente. Esto puede causar comportamientos inesperados en el programa, como fallos de segmentación, corrupción de datos, y en casos más severos, la ejecución de código malicioso.

¿Cómo ocurre?

  1. Buffer mal definido: Los programadores definen un buffer de tamaño fijo para almacenar datos de entrada.

  2. Entrada sin validación: El programa no valida adecuadamente la longitud de los datos de entrada.

  3. Sobrescritura de memoria: Si los datos de entrada exceden el tamaño del buffer, los bytes adicionales se escriben en ubicaciones de memoria contiguas, sobrescribiendo otras variables, punteros, o incluso direcciones de retorno.

Última actualización