¿Por qué es tan difícil proteger una aplicación contra los desbordamientos de búfer?

2

Por ejemplo, a menudo se descubren vulnerabilidades de desbordamiento de búfer en Flash. ¿No debería ser suficiente una verificación adecuada de todos los parámetros de función en el código fuente de Flash para protegerse contra los desbordamientos de búfer?

    
pregunta user3584 28.04.2014 - 01:46
fuente

2 respuestas

2

La dificultad proviene esencialmente del hecho de que, en lenguaje C, estás a cargo de la memoria mental de tu propio programa. Lo que significa que tienes acceso completo a la memoria, lo que te permite hacer un programa extremadamente eficiente pero, también, podría terminar en un caos indecible.

En este contexto, verificar que escribe dentro de los límites de un área de memoria ya es un desafío. Especialmente si estos límites se eligen dinámicamente en tiempo de ejecución.

Pero, esto no es suficiente para crear un problema de seguridad, también debe controlar que el Mundo exterior no puede acceder a la capacidad de escribir fuera de estos límites.

Como ha notado en su pregunta, solo ciertos tipos de programas y / o parte del código están involucrados en estos dos problemas. Por lo general, la parte que importa entradas del mundo exterior y las procesa. Y, no hay absolutamente ninguna manera de asegurar que:

  1. No habrá escritura fuera de los límites adecuados.

  2. Ninguna entrada externa podrá modificar una escritura ilegal para controlarla.

Una vez más, todos estos problemas son causados por el hecho de que desea eficiencia de memoria y, por lo tanto, un acceso completo a ella. Este es el precio a pagar.

    
respondido por el perror 28.04.2014 - 12:58
fuente
0

El problema se encuentra en varios frentes:

  • lenguaje en el que se desarrolla la aplicación.

    Qué plataforma soporta. Tenga en cuenta que la plataforma juega un importante papel en las hazañas BO.

    Aplicaciones asociadas de las que depende.

    falta de auditoría.

respondido por el abhinav singh 28.04.2014 - 20:31
fuente

Lea otras preguntas en las etiquetas