OWASP Top Ten 2013 RC: Evolución de las vulnerabilidades web

(Tomado de inteco.es)

En 2013 todos los profesionales del mundo de la seguridad TIC saben qué es y en qué consiste el proyecto OWASP (Open Web Application Security Project). A grandes rasgos y sin entrar en demasiados detalles, OWASP  (se abre en nueva ventana) es un proyecto de código abierto que se encarga de velar por la seguridad de las aplicaciones en base a una metodología que la Fundación  (se abre en nueva ventana) ha creado y que puede usarse gratuitamente por cualquiera. Sin duda, una de las características más importantes de OWASP es que se trata de un proyecto independiente que no está sujeto a las decisiones de las grandes compañías proporcionando de ese modo una información imparcial y verdaderamente útil.

OWASP comprende multitud de proyectos  (se abre en nueva ventana) con propósitos muy específicos. Por un lado se encuentran los proyectos de desarrollo y entrenamiento que engloban herramientas de aprendizaje como WebGoat; WebScarab, etc. y por otro, los proyectos de documentación como las guías, checklist, etc. Correspondiente a estos últimos, vamos a hablar del denominado “OWASP Top Ten  (se abre en nueva ventana)” y de cómo han ido evolucionando el listado a lo largo de los años en los que se ha publicado esta información.

El Top Ten de OWASP es un proyecto que recopila los diez fallos de seguridad web más comunes en aplicaciones web. La primera edición publicada data del 27 de enero del 2004  (se abre en nueva ventana) y en ella se recogían por primera vez, aunque un año antes se había realizado una lista provisional, de los diez fallos de seguridad más importantes que afectaban a plataformas web. Posteriormente le sucedieron las versiones de Top Ten 2007  (se abre en nueva ventana) y Top Ten 2010  (se abre en nueva ventana).

Recientemente se ha publicado una edición RC (Release Candidate) del Top Ten 2013  (se abre en nueva ventana) aunque presumiblemente se publicará la definitiva a finales de mes o en el próximo mayo y se prevé que no haya ningún cambio con respecto a la información actual. En esta última no hay demasiados cambios con respecto a la versión del 2010 relativos a los vectores de ataque, pero a través de un análisis de las publicaciones de los distintos años se tratará de dilucidar la evolución de los distintos riesgos.

tabla comparativa versiones de OWASP desde 2004 al 2013

Como se aprecia en la tabla, a lo largo de los años en los que se ha publicado el “Top Ten” hay varios fallos que se repiten y lo que es más importante, escalan puestos en el ranking como es el caso de los fallos de inyección (Injection Flaws). En 2004 se encontraban en el sexto puesto mientras que en 2007 y 2010-2013 se ascendían al segundo y primer puesto respectivamente. Esto puede dar una idea acerca del problema que supone este tipo de vulnerabilidades ya que al encontrarse en los puestos más altos del Top, se podría intuir que su explotación es relativamente sencilla y que además afecta a multitud de aplicaciones. Algo parecido ocurre con la gestión de sesiones y los problemas de autenticación (Broken Authentication and Session Management) que han ido escalando posiciones desde la versión del 2007 (séptimo lugar) hasta la segunda en la RC del 2013. También las configuraciones por defecto o la falta de parametrización segura de las aplicaciones web (Security Missconfiguration) han subido un puesto en el 2013 con respecto a la versión predecesora.

Por otro lado también sucede que algunos fallos como los XSS (Cross-Site Scripting) descienden posiciones entre las versiones publicadas desde el 2007 a razón de un puesto por publicación. Causa de este decremento puede estar relacionada con la implementación de herramientas que evitan y protegen frente a estas vulnerabilidades tanto en las aplicaciones cliente, como navegadores web, así como en los entorno de desarrollo. Lo mismo ocurre con la falsificación de peticiones entre sitios (Cross-Site Request Forgery –CSRF) que gracias a las distintas técnicas implementadas en los servidores, resulta más complejo explotar este tipo de fallos.

Algunas como las referencias inseguras a objetos (Insecure Direct Object References) han conservado la cuarta posición a lo largo de las últimas tres publicaciones. Esto puede evidenciar que no se han establecido los suficientes mecanismos de seguridad para evitar los descubrimientos de rutas de bases de datos, versiones de servidores web, archivos restringidos, etc. Sin duda información “demasiado” relevante para alguien que quiere atacar una aplicación web. Algo parecido ocurre con el problema recurrente de las redirecciones inseguras (Unvalidated Redirects) que mantienen la décima posición a lo largo de las últimas dos versiones del Top Ten.

Una que llama especialmente la atención en el Top Ten 2013 RC y que se encuentra en el noveno puesto es la utilización de componentes con vulnerabilidades conocidas (Using Known Vulnerable Components). Este tipo de problemas no debería presentarse ya que nadie debe plantearse la instalación de un módulo inseguro, por ejemplo de Joomla! o WordPress en “pro” de la funcionalidad sacrificando la seguridad.

Sin duda, gracias al Top Ten de OWASP y mediante su metodología, es posible establecer un punto de partida a la hora de realizar un análisis de seguridad para entornos web, pero en ningún momento hay que olvidar que las aplicaciones podrían contener más fallos que los que se presentan en el Top Ten. Por ello, antes de hacer publicar una web o servicio en Internet es necesario que sea auditado correctamente para evitar que sea comprometido.

La información del detalle, el impacto, la explicación de vectores de ataque, etc. de cada tipo de vulnerabilidad recogidas en el Top Ten 2013 RC (Release Candidate), puede consultarse en la página web: https://www.owasp.org/index.php/Top_10_2013-T10  (se abre en nueva ventana)

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s