Un buffer es la memoria asignada por un programa como almacenamiento temporal para hacer frente a un superávit de datos; ? Tampones vienen en varios tamaños son capaces de almacenar cantidades fijas de datos. Un ataque de desbordamiento de búfer se produce cuando un programa intenta deliberadamente ocupan más espacio de almacenamiento que el tampón puede manejar , haciendo que los datos adicionales al "desbordamiento ". Esto puede causar daños en los datos , lo que a su vez permite a un atacante secuestrar el control del programa. Desbordamiento de búfer puede ocurrir como resultado de un error de programación , pero los ataques de desbordamiento de buffer son cada vez más utilizado como una forma de socavar la seguridad del sistema y la integridad de los datos ataque . Efectos de desbordamiento del búfer
Cuando el buffer se llena con los datos de un programa , el exceso de datos tiende a desbordarse . Estos datos adicionales pueden obviamente no desaparecer , sino que por lo general procederá a cubrir tampones vecinos , lo que puede provocar que los datos de estos buffers se alteren
efectos de un ataque de desbordamiento de búfer
< . br>
Cuando se produce un ataque de desbordamiento de búfer, no pueden sólo los datos en buffers adyacentes estar dañado , pero la información que controla la ruta de ejecución del programa operativo se puede sobrescribir . Esto permite a un atacante hacerse con el control del programa, lo que le permite ejecutar su propio código en lugar de código originalmente dictada por el programa.
Sistemas más susceptibles
< p > Aplicaciones que se codifican en C /C + + lenguaje , que da primacía a la longitud del código y la eficiencia de programación en lugar de a la seguridad , son particularmente vulnerables a ataques de desbordamiento de búfer . Mientras que C + + es una herramienta de codificación flexible y potente , su susceptibilidad a los ataques de los medios que los programadores novatos que pueden no tener una comprensión completa de la lengua deben tener precaución en situaciones con datos sensibles.
Prevención de ataques de desbordamiento del búfer
La manera más segura de evitar un ataque de desbordamiento de búfer es el uso de la codificación segura . Hay una serie de soluciones de software libre y comercial que están orientados hacia la prevención de estos ataques ; este tipo de software utiliza comúnmente dos enfoques diferentes: defensas biblioteca de base que emplean Reimplementado funciones no seguras para asegurarse de que estas funciones no pueden exceder el tamaño del búfer , y basada en la biblioteca defensas que están diseñados para detectar cualquier intento de ejecutar código alienígena en la memoria intermedia .