Demostración en vídeo del post
En el post anterior se han enseñado 8 herramientas que encajan perfectamente en el pipeline de un DevSecOps y en éste, veremos otras 7 herramientas de uso común.
Se ha vuelto muy popular en los últimos años y es probable que ya conozcas esta tecnología, si no es el caso te recomiendo el siguiente recurso. Sus beneficios son innegables, sin embargo cuando se habla de DevSecOps cobra una especial importancia en las etapas de despliegue y release (liberación). Hay que tener en cuenta que son necesarios ajustes y configuraciones en el propio servicio de Dockerd para poder ejecutar contenedores de forma segura, algo que no viene por defecto en Docker después de instalarlo. Si quieres aprender a securizar imágenes, contenedores y preparar el servicio de Docker para que funcione de forma segura en el pipeline de DevSecOps, te recomiendo el curso de técnicas y herramientas aplicadas a DevSecOps disponible en The Hacker Way
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de release y deploy.
Se trata de un orquestador de contenedores que cobra importancia en las etapas de release, despliegue, operación y monitorización. Su configuración y posterior securización no son triviales y la curva de aprendizaje puede ser alta para el equipo, pero merece la pena implementarlo ya que ayuda con la automatización de ciertas tareas y mejora considerablemente la disponibilidad de los servicios. La configuración de este orquestador se basa principalmente en el uso de ficheros YAML en donde es posible declarar diferentes tipos de elementos, tales como servicios, deploys, volúmenes de persistencia, redes, etc.
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de release, deploy, operación y monitorización.
Es uno de los proyectos insignia de la comunidad OWASP e incorpora características que convierten a esta herramienta en un elemento fundamental en la automatización de las pruebas de seguridad. Es un proyecto orientado a pruebas de caja negra y se puede integrar fácilmente en cualquier solución de CI/CD gracias a las imágenes Docker oficiales, las cuales incluyen scripts en Python que se conectan con la API Rest de la herramienta y permiten la ejecución automática de escaneos con configuraciones personalizadas. Si quieres conocer aún más en detalle el uso de esta utilidad te recomiendo los cursos de ZAP básico y ZAP avanzado que se encuentran disponibles en The Hacker Way, si te interesan ambos cursos, tenemos disponible un pack que los incluye
Finalmente, en el curso de técnicas y herramientas aplicadas a DevSecOps encontrarás varias lecciones en las que se enseña cómo encaja esta herramienta en el pipeline de un DevSecOps y su integración con herramientas CI/CD para la automatización de las pruebas.
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de deploy
Se trata de otra herramienta interesante que permite ejecutar pruebas de seguridad sobre una URL concreta. Su funcionamiento es sencillo, se basa en una serie de complementos que se encargan de detectar vulnerabilidades típicas, tales como XSS, SQLi, SSRF, XXE, entre otras. Genera informes en formato JSON o HTML y los resultados de las pruebas se guardan en una pequeña base de datos SQLite. Será una herramienta de la que se hablará próximamente en éste blog.
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de deploy
Es un proyecto interesante que se basa en el uso de plantillas en formato YAML para declarar de qué forma se deben realizar las pruebas sobre un objetivo determinado. Este funcionamiento ayuda a reducir drásticamente los falsos positivos y a descubrir vulnerabilidades de forma efectiva. Aunque es necesario indicarle una o varias plantillas, existe un repositorio de en el que a la fecha de redactar este post, hay más de 3000 plantillas creadas por la comunidad. Dichas plantillas sirven para dos cosas, por un lado para realizar pruebas con la herramienta y por otro, para entender su funcionamiento y aprender a crear plantillas personalizadas, algo que en realidad no es muy difícil. Será una herramienta de la que se hablará próximamente en éste blog
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de deploy
Es una herramienta del tipo CI/CD y representa el «core» de un pipeline en DevSecOps. Permite crear tareas y automatizar rutinas concretas, como por ejemplo la construcción y despliegue de aplicaciones, así como la ejecución de pruebas SAST y DAST. El los últimos años se ha convertido en la herramienta más popular en el mundo del CI/CD y se encuentra desplegada en miles de empresas en todo el mundo. No obstante, es necesario tener conocimientos sobre su configuración de forma segura y precisamente éste es uno de los puntos que también se abordan en el curso de técnicas y herramientas aplicadas a DevSecOps disponible en The Hacker Way
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de release, deploy, operación y monitorización
Es un sistema de monitorización ampliamente utilizado en el mundo empresarial y dadas sus características, se convierte en una pieza clave en las etapas de operación y seguimiento/monitorización. Permite especificar el estado o comportamiento deseado de los componentes disponibles en la infraestructura (tanto hardware como software) y genera alarmas en el caso de que haya algún cambio.
¿Dónde se aplica en el SDLC?: Se implementa desde las etapas de operación y monitorización
Y tú, ¿conoces alguna otra herramienta para DevSecOps que consideres imprescindible? te leo en los comentarios.
Un saludo y Happy Hack!
Adastra.