Introducción de Análisis de Vulnerabilidades en Imágenes de Contenedores
Desarrollo del tema

Supongamos un escenario hipotético, la empresa para la que trabajas decide ejecutar algunas aplicaciones usando contenedores, la elección es Docker, después de varias semanas o meses de pruebas deciden pasar a producción y alguien, de repente, dice "¿Deberíamos hacer una auditoría de seguridad antes de salir a producción?", por lo tanto, ya sabemos que estamos con una auditoría de Docker por delante.
Como en cualquier otra auditoría, se puede usar un arsenal de herramientas y procedimientos para las aplicaciones que funcionan sobre esa infraestructura, analizar permisos de ficheros, logs y demás. Pero ¿qué pasa con los contenedores, imágenes y dockerfiles o incluso con la seguridad de las herramientas de orquestación y clustering?
Algunas consideraciones específicas para esta auditoría:
-
Comprobar que las imágenes y los paquetes que hay en ellas están actualizados y sin vulnerabilidades.
-
Automatizar la auditoría, deberíamos ser capaces de automatizar cualquier tarea. Nos ahorrará mucho tiempo y podremos ejecutar dicha auditoría tantas veces como sea necesario, olvida las auditorías manuales a menos que estés aprendiendo.
-
Links y volúmenes entre contenedores. Usar sistemas de ficheros base en solo-lectura facilitará encontrar problemas fácilmente con el comando "docker diff".
-
Cuando más grande sean las imágenes más difícil será la auditoría, reduce las imágenes al máximo.
-
El kernel del sistema anfitrión es el punto compartido entre todos los contenedores que se ejecutan en el mismo servidor, el kernel siempre actualizado.
Dicho lo anterior, a continuación un listado de herramientas para realizar análisis de vulnerabilidades:
-
Clair
-
Anchore
-
Trivy