28 April 2011

Conoce OWASP, una excelente iniciativa de Seguridad



Existen métricas para casi todo a nivel de proyectos de desarrollo de software, sin embargo, en temas de seguridad hasta hace unos años era un territorio virgen, no había gran avance en el tema, ya que la seguridad no era tenida en cuenta en los procesos de desarrollo o tal vez no pasaba de un checklist pequeño que revisaba posibles fallas de seguridad presentes en las aplicaciones.


En el año 2001, en Diciembre para ser más exactos, nace la iniciativa de OWASP, Open Web Application Security Project, como un grupo de expertos en temas de desarrollo y seguridad con las intensiones de plantear proyectos que a su vez trabajaran en temas de seguridad de aplicaciones, buenas prácticas para desarrollo seguro, pruebas de seguridad para software entre otros. Hoy en día OWASP cerca de sus primeros 10 años, plantea una organización sin ánimo de lucro conformada por un excelente grupo de profesionales de todo el mundo involucrados en varios proyectos desde la sensibilización hasta lo técnico trabajando en tres frentes (Entender como categorías): Detección, Protección y Ciclo de Vida.

A nivel corporativo, el requerimiento de implementar estándares como PCI (a nivel de transacciones de pago a través de medios electrónicos), hablan de la necesidad de implementar controles y ataques orientados al uso de OWASP, esto ofrece un marco de confianza y respaldo al trabajo en este gran proyecto.
Dentro de los frentes mencionados anteriormente, se encuentran proyectos que aportan sustancialmente a los equipos de desarrollo al hablar de código seguro, veamos algunos de ellos:

Proyecto Top Ten

Este proyecto consiste en la investigación y el respectivo análisis de las vulnerabilidades más presentadas a nivel de aplicaciones, una clasificación por criticidad, el tratamiento y presentación de soluciones para implementar. Se genera un documento anualmente y busca generar un estado del arte en temas de seguridad de aplicaciones, útil para evaluar y tomar medidas reactivas a posibles fallos de seguridad.

Proyecto Application Security Verification Standard (ASVS)

A través de este proyecto se propone un estándar o marco de referencia a través del cual se deben implementar los análisis de seguridad a aplicaciones web. Empleando el estándar como marco de referencia es posible el desarrollo de pruebas de seguridad y validación que las vulnerabilidades propuestas a través del Top Ten no se encuentren en las aplicaciones web analizadas además de otros tipos de análisis contra otros tipos de ataques.

Proyecto WebScarab

Se trata del proyecto en torno a un framework a través del cual se pueden analizar aplicaciones que se comunican a través de los protocolos HTTP y HTTPS. Su funcionamiento es similar al de un sistemas proxy de interceptación, permitiendo observar, editar y reenviar solicitudes creadas a nivel del navegador antes de ser enviadas al servidor. Su potencial es muy grande ya que cumple una función similar a aplicaciones como Tamper Data, permitiendo realizar ataques de Cross-Site Request Forgery (CSRF).

Proyecto Secure Coding Practices

Por medio de un documento que aborda las buenas prácticas para desarrollo seguro, un equipo de investigación dentro del proyecto OWASP, propone lineamientos, recomendaciones y referencias para aplicar en procesos de desarrollo de software totalmente adaptable al proceso llevado a cabo dentro del ciclo de vida del software a construir o en proceso.

Proyecto Enterprise Security API (ESAPI)




Por medio de Top Ten se identificaron las vulnerabilidades que se encuentran presentes con mayor frecuencia en proyectos de software. Por medio de herramientas como WebScarab se hace explotación de estas vulnerabilidades. Haciendo revisión de las buenas prácticas de desarrollo de software seguro se cuentan con lineamientos para involucrar buenas prácticas al proceso de codificación. Ahora es necesario implementar controles para evitar que el software desarrollado sea vulnerable a ataques conocidos. Es aquí cuando podemos hablar del proyecto Enterprise Security API, mejor conocido como ESAPI.

Un grupo de expertos en seguridad y desarrollo, ha puesto a disposición de todos una API para canocalización y sanitización (no recibir o enviar información que contenga caracteres o información que se pueda traducir en ataques) de entradas y salidas de información desde y hacia nuestras aplicaciones, ofreciendo controles estandarizados para las vulnerabilidades presentadas en el OWASP Top Ten.

ESAPI se encuentra disponible para lenguajes como PHP, JAVA, Python, .NET, ASP, Ruby, entre otros, además de ofrecer documentación para su implementación a través del uso de patrones de software.
El uso de ESAPI como API de control de ataques ofrece múltiples beneficios a equipos de desarrollo:
  • Facilidades de implementación en diversos lenguajes y tecnologías
  • Capacidad de transformación de acuerdo a las necesidades cambiantes del área de seguridad y especialización de ataques, similar a la frase: “No reinventar la rueda, sólo optimizarla“
  • Ofrecer calidad en los procesos de desarrollo a través de el cumplimiento de buenas prácticas y estandarización de codificación.
Para finalizar esta revisión del proyecto OWASP, una invitación a participar en los capítulos locales en cada país o formar uno, de la misma forma, acercarse a este tipo de proyectos que similares a proyectos de software libre, aportan en gran medida a procesos de mejoramiento continuo y estandarización, algo necesario en el mundo empresarial actual y asociado a ese tema que tanto nos apasiona, la seguridad de la información.

Fuente | Hacking-MX