Está en la página 1de 2

# Ejercicio con docker scout

# (Fichero ../Material/3. Docker Security.pdf)

-- Docker Scout --

Docker incorpora una herramienta llamada Docker Scout que nos puede ayudar a
identificar estas vulnerabilidades en nuestras imágenes. Lo podemos ejecutar de
forma
directa en línea de comandos o integrarlo con nuestro registro (Docker Hub, …) y
nuestras herramientas de CI.
Cuenta con los siguientes subcomandos:
• docker scout compare -> Compara dos imágenes y muestra las diferencias
• docker scout cves -> Muestra el detalle de las vulnerabilidades (CVEs)
detectadas en una imagen
• docker scout quickview -> Muestra un resumen rápido de los CVEs
detectados en una imagen
• docker scout recommendations -> Muestra las recomendaciones de
actualización de las imágenes base y otras recomendaciones generales si están
disponibles
Caso práctico
Vamos a poner a prueba esta herramienta con una imagen de Ubuntu.

1. Lo primero es descargar la imagen que queremos analizar


docker pull ubuntu:latest

2. Visualizamos un resumen rápido de vulnerabilidades


docker scout quickview ubuntu:latest

3. Vamos a consultar el detalle de todas las vulnerabilidades


docker scout cves ubuntu:latest

4. Finalmente vamos a probar el comando de recomendaciones


docker scout recommendations ubuntu:latest

5. Ve a hub.docker.com, busca la imagen de Ubuntu:latest y compara los resultados


obtenidos con la información mostrada en Docker Hub

6. Crea una imagen personalizada llamada ubuntu-updated tomando como imagen


base ubuntu:latest y aplica las actualizaciones del sistema pertinentes.

7. Repite los pasos 2, 3 y 4 sobre la imagen personalizada que acabamos de crear y


analiza los resultados obtenidos. ¿Tenemos alguna posible solución para reducir las
vulnerabilidades? En caso afirmativo, prueba a aplicar esa solución en una nueva
imagen llamada ubuntu-updated-fixed y repite los paso 2, 3 y 4 sobre ella.

8. Finalmente vamos a probar la opción de comparación (OJO: es una función


experimental del comando docker scout).
Primero vamos a comparar la imagen base de ubuntu:latest con nuestra imagen
ubuntu-updated
docker scout compare ubuntu:latest --to ubuntu-updated
A continuación, compararemos ubuntu:latest con ubuntu:23.10
docker scout compare ubuntu:latest --to ubuntu:23.10
Analiza los resultados de ambos comandos

-- Trivy --

Si queremos hacer un examen más en profundidad podemos echar mano de la


herramienta Trivy. https://github.com/aquasecurity/trivy
A diferencia de Docker Scout, Trivy tiene un ámbito de funcionamiento mucho mayor.
La podemos utilizar para detectar CVEs en imágenes de contenedores, pero también
será capaz de detectar configuraciones potencialmente peligrosas y secretos así
como
analizar otros elementos como repositorios de código, sistemas de ficheros,
maquinas
virtuales, configuraciones de Kubernetes o de infraestructuras cloud, etc.
Caso práctico
La herramienta Trivy se puede instalar como un script de sistema en diferentes
plataformas, pero también tenemos la opción de usarla como un contenedor. Esta será
la opción que vamos a utilizar en esta práctica.

1. Para poder utilizar Trivy y optimizar mejor el uso reiterado de la herramienta


vamos
a utilizar un bind para persistir la cache de la herramienta. Para ello creamos una
carpeta que luego usaremos como volumen (También lo podemos hacer con un
named volumen si lo preferimos)
mkdir ~/ trivy-cache

2. Vamos a ejecutar un análisis sobre la imagen de ubuntu:latest


docker run --rm -v
/var/run/docker.sock:/var/run/docker.sock -v ~/trivy#cache/:/root/.cache/
aquasec/trivy image ubuntu:latest

3. Compara los resultados obtenidos con Trivy y los obtenidos con Docker Scan.
¿Tenemos más o menos VCEs?

También podría gustarte