Las 10 Vulnerabilidades mas comunes de una aplicacion Web

 

 

La siguiente lista es un resumen tomado de http://www.owasp.org/index.jsp

Un a organización dedicada a la colaboración de seguridad en aplicaciones Web

 

Las 10 vulnerabilidades mas comunes en una aplicación Web

 

 

  1. Entrada no validada. La información de entradas Web no es validada antes de ser usadas por la aplicación Web. Los agresores  pueden usar estas fallas para atacar los componentes internos a través de la aplicación Web.

 

o      Tipo de datos (string, integer, real, etc…)

o      Conjunto de caracteres permitidos

o      Longitud mínima y máxima

o      Si nulo es permitido

o      Si el parámetro es requerido o no

o      Si los duplicados son permitidos

o      El rango numérico

o      Valores específicos permitidos (enumeración)

o      Patrones específicos (expresiones regulares)

 

 

  1. Control de Acceso Interrumpido. Las restricciones de aquello que tienen permitido hacer los usuarios autentificados no se cumplen  correctamente. Los agresores pueden explotar estas fallas para acceder a otras cuentas de usuarios, ver  archivos sensitivos o usar funciones no autorizadas.

o     www.sitio.htlm

o     www.sitio.htm/productos.

 

  1. Administración de Autenticación y Sesión Interrumpida. Las credenciales de la cuenta y los tokens de sesiones no están propiamente protegidos. Los agresores que  pueden comprometer las contraseñas, claves, cookies de sesiones u otro token, pueden vencer las  restricciones de autenticación y asumir la identidad de otros usuarios.

 

  1. Fallas de Cross Site Scripting (XSS). La aplicación Web puede ser usada como un mecanismo para transportar un ataque al navegador del usuario  final. Un ataque exitoso puede comprometer el token de sesión del usuario final, atacar la maquina local o  enmascarar contenido para engañar al usuario.

 

q     Validación de los scripts de salida.

q     Uso de correo electrónico

 

  1. Desbordamiento del Búfer. Los componentes de aplicaciones Web en ciertos lenguajes que no validan adecuadamente las entradas de  datos pueden ser derribados y, en algunos casos, usados para tomar control de un proceso. Estos  componentes pueden incluir CGI, bibliotecas, rutinas y componentes del servidor de aplicación Web.

q     Staks de los componentes

q     No ambiente Java

  1. Fallas de Inyección. La aplicación Web puede pasar parámetros cuando accede a sistemas externos o al sistema operativo local. Si un agresor puede incrustar comandos maliciosos en estos parámetros, el sistema externo puede ejecutar estos comandos por parte de la aplicación Web. Llamadas a:

 

o     system,

o     exec,

o     fork,

o     Runtime.exec,

o     solicitudes SQL

 

  1. Manejo Inadecuado de Errores. Condiciones de error que ocurren durante la operación normal que no son manejadas adecuadamente. Si un  agresor puede causar que ocurran errores que la aplicación Web no maneja, éste puede obtener información detallada del sistema, denegar servicios, causar que mecanismos de seguridad fallen o tumbar el servidor.
  1. Almacenamiento Inseguro. Las aplicaciones Web frecuentemente utilizan funciones de criptografía para proteger información y  credenciales. Estas funciones y el código que integran a ellas han sido difíciles de codificar adecuadamente,  lo cual frecuentemente redunda en una protección débil.

 

o      Fallar al encriptar información crucial.

o      Almacenamiento inseguro de llaves, certificados y contraseñas.

o      Almacenamiento incorrecto de secretos en memoria.

o      Fuentes pobres de aleatorización.

o      Elección pobre de algoritmo.

o      Intentar inventar el nuevo algoritmo de encriptación.

o      Fallar al incluir soporte para cambios en las llaves de encriptación

 

  1. Negación de Servicio. Los agresores pueden consumir los recursos de la aplicación Web al punto de que otros usuarios legítimos no  puedan ya acceder o usar la aplicación. Los agresores también pueden dejar a los usuarios fuera de sus  cuentas y hasta causar que falle una aplicación entera.

 

  1. Administración de Configuración Insegura. Tener una configuración de servidor estándar es crítico para asegurar una aplicación Web. Estos servidores  tienen muchas opciones de configuración que afectan la seguridad y no son seguros desde la instalación  original del software.

 

o     Fallas de seguridad no parchadas en el software del servidor

o     Fallas de seguridad en el software del servidor o malas configuraciones que permiten ataques de listado de directorio o cross directory.

o     Innecesarios archivos por defecto, de respaldo o de ejemplo, incluyendo Scripts, aplicaciones, archivos de configuración y páginas Web.

o     Permisos no adecuados en archivos y directorios.

o     Servicios innecesarios habilitados, incluyendo manejo de contenido y administración remota.

o     Cuentas por defecto con contraseñas por defecto.

o     Funciones administrativas o de depuración que son habilitadas o accesibles.

o     Certificados SSL y opciones de encriptación mal configurados.

o     Uso de certificados por defecto.

o     Autenticación inadecuada con sistemas externos.