Salta directamente a la metodología, alojada en el wiki de este repositorio.
Alternativamente, consulte la plantilla de Google Sheets para el seguimiento de las pruebas.
Esta metodología presenta una guía obstinada sobre cómo realizar una evaluación de seguridad de aplicaciones web. El enfoque principal es enumerar claramente todas las áreas principales que un probador debe cubrir durante una revisión de seguridad. Como herramienta, los probadores de seguridad pueden aprender del documento y usarlo para dar forma a su proceso de prueba. Los desarrolladores también pueden utilizar para comprender qué tipos de vulnerabilidades pueden existir en sus aplicaciones y las mejores prácticas que deben implementar para reducir el riesgo de ataques.
Si es un principiante, esta metodología puede considerarse más un documento de referencia que un tutorial o introducción. En su lugar, recomiendo la academia de seguridad web de Portswigger y la serie de blogs de Eric Rescorla que comprende el modelo de seguridad web .
El objetivo de esta metodología es ser lo más efectivo posible para comunicar qué problemas para probar, por qué ese problema es importante y (donde sea posible) proporcionar recomendaciones sobre cómo probar y remediar eficientemente el problema. Los principios rectores que sigo al escribir el documento son:
Flexibilidad, confiabilidad, usabilidad : el documento debe mantenerse actualizado y utilizable en una amplia gama de aplicaciones diferentes. Si la metodología se centra demasiado en tecnologías o marcos específicos, los lectores no estarán seguros de si un problema determinado se aplica a su situación. Debería ser utilizable por lectores menos experimentados (para proporcionar una introducción a cómo se ven las pruebas de seguridad modernas) y los lectores altamente experimentados (para mantenerlos actualizados y ayudar a garantizar que logren una cobertura total).
Sea sucinto : el documento debe ser lo más sucinto posible para explicar cada categoría o problema. Ponte directamente al corazón del asunto y proporcione referencias de alta calidad cuando sea necesario para obtener más información. Evite hinchar el documento con información sobre cualquier problema, cuando un problema es solo una pequeña porción de todo el documento.
Sea obstinado : no rehuya claramente declarar claramente las mejores prácticas. Aún más importante, no intente cubrir todos los problemas de seguridad posibles, especialmente cuando un problema tiene un impacto mínimo o ningún impacto en la mayoría de las situaciones. Si un problema tiene una variedad de recomendaciones aceptables, haga una sugerencia segura y ampliamente aplicable y confíe en el lector para ajustar la recomendación de su contexto específico.
En última instancia, ninguna metodología es un sustituto del juicio de un probador experimentado que puede tener en cuenta el contexto de su aplicación específica. Un servidor HTTP integrado de cosecha propia escrito en C tendrá vulnerabilidades muy diferentes que un microservicio de Kubernetes utilizando el último marco web con una frontend React. Este documento define una línea de base que puede ser utilizada por cualquier persona interesada en mejorar la seguridad de las aplicaciones web, y sirve como un estándar al que los probadores pueden mantenerse para ofrecer resultados de alta calidad.