Seguridad

En el documento de Normas Obligatorias del Libro Blanco de Desarrollo se incluye información referente a la seguridad.
Medidas de Seguridad Generales
- Bases de Datos.
- Auditoría de las Bases de Datos.
- Comunicaciones con Sistemas Externos.
- Validación de los datos de entrada.
- Encriptación de datos.
Seguridad en Aplicaciones Web
Para las aplicaciones Web es obligatorio
- Utilización de la páginas de error. Toda aplicación definirá obligatoriamiente páginas de error mediante la creación de elementos error-pageen el fichero web.xml.
- SQL Injection. El ataque basado en la introducción manual y directa de código SQL por parte del usuario en campos de formularios web, se solventará con la arquitectura propuesta de capa de persistencia (JPA).
- Bloques de código de evaluación de permisos.
- Uso preferente de peticiones POST. Se deben utilizar las peticiones POST frente a las peticiones GET. De esta forma evitamos que un usuario pueda identificar de forma sencilla las peticiones que se ejecutan en el navegador.
- Securización de URLs con paso de ID's por GET. Cuando se pasan los datos sensibles por GET ( no recomendable), debe incluirse un filtro a la recepción de estos datos.
- Control de las sesiones en las aplicaciones Web.
- Validación de Formularios.
- Para evitar consumos excesivos de memoria en el servidor y el posible robo de sesión del usuario, se hará una correcta implentación de la gestión de sesiones por parte de la aplicación.
Seguridad en Aplicaciones Móviles
- Autenticación. Se audita que todas las conexiones internas y externas pasan a través de un sistema de autenticación y asegura que no pueden ser saltados los niveles de seguridad y que un intruso pueda acceder a sitios protegidos.
- Autorización. Se comprueba que se haya implementado los mecanismos de autorización, definido los tipos y perfiles de usuario y los derechos de dichos usuarios.
- Gestión de Cookies. Se revisa que las Cookies no incluyan información sensible, que no se puedan realizar acciones no autorizadas mediante su manipulación, se emplea cifrado y transmisión no segura, los datos de sesión se validan correctamente y la Cookie mantiene la menor cantidad de información posible.
- Validación de los datos de Entrada. La auditoría verifica que existen mecanismos de validación de datos robustos e incluyen todos los datos que puedan ser modificados como cabeceras HTTP, campos de entrada, campos ocultos, etc. Todas las comprobaciones de validación de datos se realizarán en el servidor y no en la parte cliente.
- Registro/Auditoría. Se audita que ningún tipo de información sensible se almacene en los registros de la aplicación.
- Criptografía. Incluye la revisión de que no se transmite ningún tipo de dato sensible sin cifrar, sea internamente o externamente y que los algoritmos o métodos de cifrado son reconocidos y poseen la robustez necesaria.
- Secure Code Environment. Se analiza la estructura de ficheros/directorios para asegurar que ningún recurso que no debería serlo, pueda ser accesible por el usuario, se realizan correctamente las reservas/liberacones de memoria, etc.
- Gestión de sesiones.