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 dicho 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 para el despliegue de imágenes.

Cyberwatch implementa esta API y puede por tanto ser utilizado para escanear las imágenes de un registro Harbor o generar el SBOM de sus imágenes. A continuación veremos cómo configurar y utilizar esta funcionalidad.

Configurar el escáner Harbor

Para permitir que su registro Harbor se conecte a Cyberwatch, es necesario configurar el escáner Harbor:

  1. Hacer clic en Administración
  2. Hacer clic en Herramientas externas
  3. Hacer clic en la pestaña Escáner de contenedores
  4. Hacer clic en el botón Añadir
  5. Elegir la fuente
  6. Guardar

Obtendrá los datos necesarios para añadir Cyberwatch como escáner de vulnerabilidades en Harbor. Recuerde guardar estos datos, ya que no serán accesibles posteriormente.

Es posible crear varios conjuntos de credenciales y así definir varios escáneres en Harbor. Esto permite configurar a nivel de cada proyecto el escáner a utilizar. De este modo, se pueden repartir los escaneos de imágenes Docker entre los nodos en una instancia multinodo o añadir concurrencia en un mismo nodo.

Asociar un registro al escáner Harbor en el campo Identificadores permite utilizar sus credenciales durante las solicitudes de análisis de imágenes por Harbor; las imágenes Docker creadas podrán ser escaneadas nuevamente 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 de Harbor. Este tiempo corresponde al intervalo entre dos solicitudes de la API durante la creación del informe de vulnerabilidades de una imagen Docker.

Un intervalo demasiado corto puede provocar problemas de sobrecarga de la API, mientras que un intervalo 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:

  1. Conéctese a su registro Harbor con una cuenta con derechos de administrador
  2. En Administración, haga clic en Servicios de análisis
  3. Haga clic en el botón Nuevo escáner
  4. Rellene la información requerida utilizando los datos generados en el paso anterior
  5. Pruebe su información haciendo clic en el botón Probar la conexión
  6. Si todo está correcto, haga clic en el botón Añadir

Cyberwatch está ahora añadido como escáner de imágenes y listo para su uso.

Para explicaciones complementarias, puede consultar la documentación oficial (en inglés).

Escanear una imagen Docker

Para escanear una imagen Docker desde su interfaz Harbor:

  1. Acceda al proyecto del registro donde se encuentra la imagen
  2. Haga clic en la imagen
  3. Seleccione, en la columna de la izquierda, las versiones de esta imagen que desea escanear
  4. Haga clic en el botón Scan Vulnerabibilty
  5. Una vez finalizado el análisis, aparecerá un informe resumido en la columna Vulnerabilidad
  6. Para una versión más detallada, haga clic en la versión analizada y baje 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, esta 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:

  1. Acceda al proyecto del registro donde se encuentra la imagen
  2. Haga clic en la imagen
  3. Seleccione, en la columna de la izquierda, las versiones de esta imagen de las que desea obtener el SBOM
  4. Haga clic en el botón Generate SBOM
  5. Una vez generado el SBOM, aparecerá un enlace en la columna SBOM
  6. Haga clic en el enlace, y en la parte inferior 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 de trabajo.

En la interfaz de Cyberwatch:

  1. Configurar el registro Harbor
  2. Crear un descubrimiento de registro Harbor En los parámetros, seleccione la opción Eliminar únicamente los activos disociados de todos los descubrimientos o Eliminar todos los activos disociados de este descubrimiento para el campo Eliminación de activos disociados y un periodo de lanzamiento adecuado al caso de uso
  3. Configurar el escáner Harbor asociando el registro Harbor creado previamente

En la interfaz de Harbor:

  1. Añadir Cyberwatch como escáner de vulnerabilidades con los datos que acaba de generar durante la configuración del escáner Harbor
  2. Lanzar un escaneo de las imágenes Docker presentes: en Administración > Servicios de análisis > Vulnerability, haga clic en el botón Analizar ahora
  3. Seleccione la opción Análisis automático de imágenes al enviar en la pestaña Configuración de cada proyecto del registro
  4. También es posible automatizar la generación de los SBOM seleccionando la opción Generar automáticamente un SBOM al push en la pestaña Configuración de cada proyecto del registro

Una vez realizados estos pasos, las imágenes Docker del registro habrán 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 que tengan vulnerabilidades que superen una determinada criticidad
  • escanear todas las imágenes disponibles en el registro
  • planificar los escaneos

Estas diferentes funcionalidades se detallan en la documentación de Harbor sobre los escaneos de vulnerabilidades.


Volver arriba

English Français Español