“Conocimientos Programación>C /C + + Programming

Tipos de ataques de desbordamiento de búfer

2015/9/5
En 1988 , el primer virus de Internet más importantes de margen sobrescribió una sección pequeña , 536 bytes de memoria en un solo equipo y dentro de cuatro días , incapacitado más de 60.000 ordenadores de todo el mundo . A pesar de los avances en los lenguajes de programación , técnicas de programación y el sistema operativo para reforzar la seguridad , los programadores maliciosos pueden seguir creando virus y otro malware utilizando las saturaciones del búfer de accidente , control o robar datos de su sistema . Tipos de memoria Participa

Un buffer equipo es una sección de la memoria que se utiliza para almacenar temporalmente los datos necesarios para la aplicación o el sistema operativo. Una aplicación tiene un buffer fijo o estático llamado la pila, cuyo tamaño se determina cuando el programa se compila primero y se asignan por el sistema operativo cuando se carga la aplicación. Memoria Heap es otro tipo de tampón una aplicación utiliza mientras se está ejecutando . A diferencia de los buffers estáticos , se crea y se destruye la memoria heap que la aplicación requiere .
Saturaciones del búfer estático

saturaciones del búfer estático ocurre cuando demasiados datos son escritos a una predefinida parte de la memoria dentro de la pila de la aplicación . La pila contiene información acerca de la función de aplicación y variables de la función . Los elementos de la pila tiene un tamaño fijo o estático . Si hay más datos se escriben en un artículo de pila de lo que está destinado a contener el exceso de datos se almacenan en posiciones de memoria adyacentes. El exceso de información puede corromper los datos que ya existen .
Sobrecostos Montón
memoria Heap

es el espacio en el sistema operativo da la aplicación para crear y almacenar información sobre la mosca . Cada bloque del montón tiene un puntero a la dirección física del bloque de memoria antes y después de ella. Al igual que los excesos de la pila , cuando demasiados datos se escriben en un bloque previamente asignado de la memoria, el exceso de datos se desborda al siguiente bloque de memoria y puede alterar los punteros anterior y posterior del bloque. Esto puede ser usado para bloquear los punteros de aplicación o lugar de bloques de memoria del programador malintencionado tiene acceso.
Indización de matrices errores

Cuando matrices se declaran en la mayoría de los lenguajes de programación , una sección fija de la memoria en el montón está preasignado para los datos de la matriz. Los lenguajes C + y C + asignen correctamente las matrices , pero no impiden que el bloque de memoria array se sobrescriba . Al igual que los excesos del montón , los errores de indexación puede sobrescribir y dañar bloques contiguos de memoria. Idiomas modernos como C # y Java para comprobar error de indexación array en tiempo de compilación y durante la ejecución del programa.

C /C + + Programming
Cómo crear iluminación dinámica en GtkRadiant
Cómo sobrecarga de una función en C + +
Diferencia entre fgetc y getc
Cómo hacer una aplicación para iPhone Really Simple
Cómo Enviar FIFO de salida a un archivo
Cómo utilizar la función strtok en C + +
Cómo hacer matrices en C + +
Cómo utilizar un control ListBox en el MFC de Visual C + +
Conocimientos Informáticos © http://www.ordenador.online