MEDIDAS DE SEGURIDAD QUE REFIERE LA INGENIERIIA DE
DE SOFTWARE EN EL PROYECTO DE SOFTWARE A
DESARROLLAR.
Medidas estándar que debemos tomar para el
desarrollo de software seguro
1. Paradesarrollar una aplicación segura debemos
considerar los siguientes aspectos:
Control de la entrada: validar todas las entradas.
Gestión de memoria: desbordamiento de buffers.
Estructura interna ydiseño del programa.
Llamadas a recursos externos: bibliotecas, scripts.
Control de la salida: formato, restricciones.
Problemas de los lenguajes de programación.
Otros: algoritmoscriptográficos, de autentificación.
máximos, mínimos y ceros.
2. Control de la entrada:
Hay que validar todas las entradas que vienen de fuentes no
fiables.
Se debe determinar qué es legal yrechazar lo que no lo sea.
Siempre se debe verificar que algo es legal, la aproximación
contraria (detección
de entradas erróneas)
puede fallar.
El sistema se debe verificar generando
entradaserróneas desconocidas.
Hay que limitar la longitud
máxima de la entrada
3. Vigilar caracteres especiales :
Caracteres de control.
Caracteres especiales para el Shell, SQL, etc.
Delimitadores (p. ej. tabuladores, comas,:, etc.).
Verificar la codificación y decodificación de URLs y
la validez de los juegos de caracteres.
Minimizar las decodificaciones;
no decodificar másde una vez
de modo innecesario.
Números: verificar
máximos, mínimos y ceros.
4. Validación de otros tipos de datos:
Direcciones de correo: ver RFC 2822 y 822.
Nombres de fichero: Omitircaracteres
especiales (/, 'n', '”', ...), omitir '../'.
Expresiones regulares.
Cookies: comprobar
dominios.
HTML/XML: prevenir
cross-posting.
URI/URL: validar antes
de procesar.La experiencia en seguridad del software real
ha permitido establecer una serie de principios
de alto nivel para lograr un software más
seguro. Microsoft hace referencia a estos
principios como...
Regístrate para leer el documento completo.