Escanear imágenes Docker en un registro Harbor
Harbor define la API REST Scanner Adapter HTTP API que puede ser implementada por un escáner de vulnerabilidades. El registro puede entonces conectarse a un escáner de vulnerabilidades para obtener un informe de vulnerabilidades o un archivo SBOM (Software Bill of Materials) de sus imágenes Docker. Esto permite, en particular, mostrar directamente en la interfaz de Harbor las vulnerabilidades detectadas en cada imagen y definir una política de seguridad de despliegue de imágenes.
Cyberwatch implementa esta API y puede utilizarse para escanear las imágenes de un registro Harbor o generar el SBOM de sus imágenes. Vamos a ver cómo configurar y usar esta funcionalidad.
Configurar el escáner Harbor
Para permitir que su registro Harbor se conecte a Cyberwatch, es necesario configurar el escáner Harbor:
- Hacer clic en Administración
- Hacer clic en Herramientas externas
- Hacer clic en la pestaña Escáner de contenedores
- Hacer clic en el botón Añadir
- Elegir el origen
- Guardar
Obtendrá los datos necesarios para añadir Cyberwatch como escáner de vulnerabilidades en Harbor. Recuerde guardar estos datos, ya que no estarán accesibles posteriormente.
Es posible crear varios conjuntos de credenciales y definir así varios escáneres en Harbor. Esto permite configurar a nivel de cada proyecto el escáner a utilizar. Así se pueden repartir los escaneos de imágenes Docker entre nodos en una instancia multi-nodo o añadir concurrencia en un mismo nodo.
Asociar un registro al escáner Harbor en el campo Credenciales permite utilizar sus credenciales durante las solicitudes de análisis de imágenes por parte de Harbor; las imágenes Docker creadas podrán escanearse de nuevo desde la interfaz de Cyberwatch. El comportamiento por defecto es utilizar las credenciales efímeras proporcionadas por Harbor. Tenga en cuenta que estas credenciales expiran tras el análisis inicial.
También es posible ajustar el intervalo entre dos solicitudes de la API Harbor. Este tiempo corresponde a la espera entre dos solicitudes de la API durante la creación del informe de vulnerabilidades de una imagen Docker.
Un tiempo demasiado corto puede provocar problemas de sobrecarga de la API; un tiempo demasiado largo alargará innecesariamente el tiempo necesario para escanear una imagen. El valor por defecto es de 30 segundos.
Añadir Cyberwatch como escáner de vulnerabilidades
Ahora puede añadir Cyberwatch como escáner de vulnerabilidades para su registro Harbor:
- Iniciar sesión en su registro Harbor con una cuenta con derechos de administrador
- En Administración, hacer clic en
Servicios de análisis - Hacer clic en el botón
Nuevo escáner - Completar la información requerida usando los datos generados en el paso anterior
- Probar la información haciendo clic en el botón
Probar conexión - Si todo está OK, hacer clic en el botón
Añadir
Cyberwatch está ahora añadido como escáner de imágenes y está listo para usarse.
Para explicaciones adicionales, puede referirse a la documentación oficial (en inglés).
Escanear una imagen Docker
Para escanear una imagen Docker desde su interfaz Harbor:
- Ir al proyecto del registro donde se encuentra la imagen
- Hacer clic en la imagen
- Marcar, en la columna izquierda, las versiones de esta imagen que desea escanear
- Hacer clic en el botón
Scan Vulnerabibilty - Una vez finalizado el análisis, aparecerá un informe resumido en la columna Vulnerabilidad
- Para una versión más detallada, hacer clic en la versión analizada y desplazarse hasta el final de la página para encontrar la tabla de vulnerabilidades
Para más detalles, consulte la documentación de Harbor.
Cuando se realiza un escaneo de imagen o se genera un archivo SBOM, si la imagen no existe ya localmente en Cyberwatch, se crea y puede encontrarse en la lista de imágenes Docker, así como el análisis completo realizado por Cyberwatch.
Generar el SBOM de una imagen Docker
Para generar el SBOM de una imagen Docker desde su interfaz Harbor:
- Ir al proyecto del registro donde se encuentra la imagen
- Hacer clic en la imagen
- Marcar, en la columna izquierda, las versiones de esta imagen de las que desea obtener el SBOM
- Hacer clic en el botón
Generate SBOM - Una vez generado el SBOM, aparece un enlace en la columna SBOM
- Hacer clic en el enlace y, al final de la página en la pestaña SBOM, podrá descargar el archivo
Flujo de trabajo para un registro Harbor
Para facilitar el seguimiento de las imágenes Docker de un registro Harbor, le sugerimos el siguiente flujo.
En la interfaz Cyberwatch:
- Configurar el registro Harbor
- Crear un descubrimiento de registro Harbor En los parámetros, seleccionar la opción
Eliminar solo los activos disociados de todos los descubrimientosoEliminar todos los activos disociados de este descubrimientopara el campoEliminación de activos disociadosy un período de ejecución adecuado al caso de uso - Configurar el escáner Harbor asociando el registro Harbor creado previamente
En la interfaz de Harbor:
- Añadir Cyberwatch como escáner de vulnerabilidades con los datos que acaba de generar durante la configuración del escáner Harbor
- Lanzar un escaneo de las imágenes Docker presentes: en
Administración > Servicios de análisis > Vulnerability, hacer clic en el botónAnalizar ahora - Marcar la opción
Análisis automático de imágenes en el envíoen la pestañaConfiguraciónde cada proyecto del registro - También es posible automatizar la generación de SBOM marcando la opción
Generar automáticamente un SBOM al pushen la pestañaConfiguraciónde cada proyecto del registro
Una vez realizados estos pasos, las imágenes Docker del registro han sido escaneadas y las futuras nuevas imágenes lo serán automáticamente. Y el descubrimiento Registro Harbor permite mantener actualizadas las imágenes Docker del registro en Cyberwatch.
Para ir más allá
Harbor permite:
- implementar una política de seguridad impidiendo, por ejemplo, el despliegue de imágenes con vulnerabilidades que superen una determinada criticidad
- escanear todas las imágenes disponibles en el registro
- planificar los escaneos
Estas diferentes funcionalidades están detalladas en la documentación de Harbor sobre escaneos de vulnerabilidades.