2010-10-22 24 views
12

Mientras codigo, trato de estar consciente de la seguridad todo el tiempo. El problema es que necesito saber qué buscar y qué prevenir.C++: ¿cuáles son las vulnerabilidades más comunes y cómo evitarlas?

¿Hay una lista en alguna de las ++ (C) vulnerabilidades de software más comunes y cómo evitarlos?

¿Qué hay del software C++ para usos específicos, p. un software de consola de Linux o una aplicación web?

+0

código no se compila es el más común :) – Chubsdad

+3

habría pensado El código que no compilará habría sido una de las mejores maneras de evitar que se envíen vulnerabilidades. –

+0

Estoy de acuerdo, no ejecutable, no hay agujeros de seguridad. La comprobación del código estático en lenguajes como C++ es muy difícil, si es posible. –

Respuesta

5

Este sitio puede tener enlaces a lo que busca:

http://www.deitel.com/ResourceCenters/Programming/C/CSecurity/tabid/1549/Default.aspx


Creo que voy a añadir que uno de los problemas más comunes en C y C++ es desbordamiento de búfer:

http://en.wikipedia.org/wiki/Buffer_overflow#Use_of_safe_libraries

Para ello, utilice sólo las funciones que controlan las fronteras, como strncpy() en lugar de strcpy().

+0

Ese es un enlace muy útil – Nahar

+0

Gracias. Estoy estudiando estos enlaces. – augustin

+1

'strncpy' es una idea * mala * porque puede dejarte sin cadenas terminadas en nulo, lo que lleva a desbordamientos de búfer aún peores. Alternativas como 'strlcpy',' strcpy_s' y 'memcpy' son mejores. – Gabe

2

también hay probl ems como 1. fallo de segmentación 2. Pérdida de memoria errores 3. asignación de memoria, etc que puedan ser de su interés ...

Cuestiones relacionadas