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

Cómo dejar de desbordamiento de búfer C

2013/12/6
Desbordamiento de búfer provocan un comportamiento inesperado del programa como resultado de sobrescribir inapropiada memoria. Un búfer es un bloque contiguo de memoria de un tamaño fijo se utiliza para almacenar datos, tales como una cadena de caracteres . El lenguaje de programación C permite escribir los datos en el búfer , incluso si es además demasiado large.In a hacer de su caída del programa , los atacantes pueden utilizar desbordamientos de búfer para ejecutar código malicioso en los sistemas que ejecutan el programa. A pesar de todos los intentos de proteger a las vulnerabilidades de desbordamiento de búfer , que sigue siendo un ataque comúnmente explotadas vector.In C, desbordamientos de búfer pueden mitigarse siguiendo las mejores prácticas de codificación segura . Instrucciones
1

Evite las funciones de la biblioteca C strcpy , strcat , sprtinf , vsprintf , obtiene y scanf . Estas funciones no son seguros y no realizan la comprobación de límites de entrada antes de escribir o leer desde un buffer, lo que resulta en desbordamientos de búfer . Comprobación de los límites es un método de uso de sentencias condicionales - por ejemplo, si , entonces - para comprobar si una lectura o escritura se encuentra dentro del término al búfer
2

código Invalidar ejecutado desde la pila. . La pila es donde la memoria tales como tampones se almacenan mientras la aplicación se está ejecutando. El código malicioso es ejecutado por la escritura en la pila , en el que se ejecuta a continuación . Aunque la aplicación puede ser difícil, alguna versión de Linux y GNU C Compiler ( GCC ) están disponibles que pueden prevenir esto.
3

Utilice una compilar que verificará potenciales condiciones de desbordamiento de búfer . Extensiones y parches están disponibles para los compiladores de C , tales como C, que le avise cuando se utiliza la función de seguro y tratar de llevar a cabo la comprobación de límites en el código.
4

Utilice programas gratuitos como escudo pila y pila Guarda para detectar y proteger contra desbordamientos de búfer . ( Ver la página de Recursos . )

C /C + + Programming
Cómo hacer una cadena en una matriz de caracteres en C + +
Cómo crear una lista enlazada en C
Cómo escribir Binary presentar una código de ejemplo en C
Turbo C Tutorial
Convertir char buffer de doble en C + +
Cómo convertir doble en cadena C + +
Cómo utilizar USB IO OCX en C
Cómo hacer un botón de comando invisible en Visual C
Conocimientos Informáticos © http://www.ordenador.online