Tecnología

Inicio

Tipos de ataques como Desbordamiento de buffer

Tipos de ataques como Desbordamiento de buffer


En 1988, el primer virus de Internet más importantes de margen sobrescribía una pequeña sección, 536 bytes de memoria en un único equipo y dentro de cuatro días, incapacitado más de 60.000 ordenadores en todo el mundo. A pesar de los avances en lenguajes de programación, técnicas de programación y endurecimiento de la seguridad del sistema operativo, los programadores maliciosos pueden seguir creando virus y otros programas maliciosos utilizando desbordamientos de búfer para dormir, el control o robar los datos de su sistema.

Tipos de memoria Involucradas

Un tampón de ordenador es una sección de su memoria que se utiliza para retener temporalmente los datos necesarios por una 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 y se le asigna en el sistema operativo cuando se carga la aplicación en primer lugar. memoria de pila es otro tipo de tampón una aplicación utiliza mientras se está ejecutando. A diferencia de los amortiguadores estáticos, memoria de almacenamiento dinámico se crea y se destruye cuando la aplicación requiere.

Estática BUFFE

desbordamientos de búfer estático ocurre cuando demasiados datos se escriben en una parte predefinida 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 tienen un tamaño fijo o estático. Si hay más datos se escriben en un elemento de la pila de lo que está pensada para alojar, el exceso de datos se almacenan en posiciones de memoria adyacentes. El exceso de datos puede dañar los datos ya existe.

montón saturaciones

memoria de pila es el espacio de su sistema operativo da la aplicación para crear y almacenar información sobre la marcha. 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, los datos de forma excesiva se extiende hacia el siguiente bloque de memoria y pueden alterar los punteros siguiente y anterior del bloque. Esto puede ser usado para chocar los punteros de aplicación o lugar de bloques de memoria del programador malicioso tiene acceso.

Errores indización de matrices

Cuando las 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á pre-asignado para los datos de la matriz. Los lenguajes C y C ++ asignan adecuadamente matrices, pero no impiden que el bloque de memoria matriz se sobrescriba. Al igual que los excesos del montón, los errores de indexación pueden sobrescribir y bloques adyacentes corruptos de memoria. idiomas modernos como C # y Java para comprobación de error indexación de matrices en tiempo de compilación y durante la ejecución del programa.