Escanejar les imatges Docker d’un registre Harbor

Harbor defineix l’API REST Scanner Adapter HTTP API, que pot implementar un escàner de vulnerabilitats. El registre es pot connectar llavors a un escàner de vulnerabilitats d’aquest tipus per obtenir un informe de vulnerabilitats o un fitxer SBOM (Software Bill of Materials) de les seves imatges Docker. Això permet, entre altres coses, mostrar directament a la interfície de Harbor les vulnerabilitats detectades a cada imatge i definir una política de seguretat per al desplegament de les imatges.

Cyberwatch implementa aquesta API i, per tant, es pot utilitzar per escanejar les imatges d’un registre Harbor o generar l’SBOM de les seves imatges. A continuació veurem com configurar i utilitzar aquesta funcionalitat.

Configurar l’escàner Harbor

Perquè el vostre registre Harbor es pugui connectar a Cyberwatch, cal configurar l’escàner Harbor:

  1. Feu clic a Administració
  2. Feu clic a Eines externes
  3. Feu clic a la pestanya Escàners de contenidors
  4. Feu clic al botó Afegeix
  5. Trieu l’origen
  6. Deseu

Obtindreu les dades necessàries per afegir Cyberwatch com a escàner de vulnerabilitats a Harbor. Assegureu-vos de desar aquestes dades, perquè després ja no s’hi podrà accedir.

Es poden crear diversos jocs de credencials i definir així diversos escàners a Harbor. Això permet configurar a cada projecte l’escàner que s’ha d’utilitzar. Així es poden repartir els escanejos d’imatges Docker entre els nodes d’una instància amb diversos nodes o afegir concurrència en un mateix node.

Associar un registre a l’escàner Harbor al camp Credencials permet utilitzar les seves credencials durant les sol·licituds d’anàlisi de les imatges per part de Harbor, i les imatges Docker creades es podran tornar a escanejar des de la interfície de Cyberwatch. El comportament per defecte és utilitzar les credencials efímeres que proporciona Harbor. Tingueu en compte que aquestes credencials caduquen després de l’anàlisi inicial.

També es pot ajustar el temps entre dues sol·licituds a l’API de Harbor. Aquest temps correspon a l’interval entre dues sol·licituds a l’API durant la creació de l’informe de vulnerabilitats d’una imatge Docker.

Un temps massa curt pot provocar problemes de sobrecàrrega de l’API, i un temps massa llarg allargarà innecessàriament el temps necessari per escanejar una imatge. El valor per defecte és de 30 segons.

Afegir Cyberwatch com a escàner de vulnerabilitats

Ara ja podeu afegir Cyberwatch com a escàner de vulnerabilitats per al vostre registre Harbor:

  1. Inicieu la sessió al vostre registre Harbor amb un compte que tingui drets d’administrador
  2. A Administration, feu clic a Interrogation Services
  3. Feu clic al botó New scanner
  4. Ompliu la informació necessària amb les dades generades al pas anterior
  5. Proveu la vostra informació fent clic al botó Test Connection
  6. Si tot és correcte, feu clic al botó Add

Cyberwatch ja s’ha afegit com a escàner d’imatges i està a punt per utilitzar-se.

Per obtenir explicacions complementàries, podeu consultar la documentació oficial (en anglès).

Escanejar una imatge Docker

Per escanejar una imatge Docker des de la vostra interfície de Harbor:

  1. Aneu al projecte del registre on es troba la imatge
  2. Feu clic a la imatge
  3. Marqueu, a la columna de l’esquerra, les versions d’aquesta imatge que voleu escanejar
  4. Feu clic al botó Scan Vulnerabibilty
  5. Un cop acabada l’anàlisi, apareix un informe breu a la columna Vulnerabilities
  6. Per obtenir una versió més detallada, feu clic a la versió analitzada i baixeu fins a la part inferior de la pàgina per trobar la taula de vulnerabilitats

Per obtenir més detalls, consulteu la documentació de Harbor.

Quan s’escaneja una imatge o es genera un fitxer SBOM, si la imatge encara no existeix localment a Cyberwatch, es crea i es pot trobar a la llista d’imatges Docker, juntament amb l’anàlisi completa feta per Cyberwatch.

Generar l’SBOM d’una imatge Docker

Per generar l’SBOM d’una imatge Docker des de la vostra interfície de Harbor:

  1. Aneu al projecte del registre on es troba la imatge
  2. Feu clic a la imatge
  3. Marqueu, a la columna de l’esquerra, les versions d’aquesta imatge de les quals voleu obtenir l’SBOM
  4. Feu clic al botó Generate SBOM
  5. Un cop generat l’SBOM, apareix un enllaç a la columna SBOM
  6. Feu clic a l’enllaç; a la part inferior de la pàgina, a la pestanya SBOM, podeu baixar el fitxer

Flux de treball per a un registre Harbor

Per facilitar el seguiment de les imatges Docker d’un registre Harbor, us suggerim el flux de treball següent.

A la interfície de Cyberwatch:

  1. Configureu el registre Harbor
  2. Creeu un descobriment de registre Harbor Als paràmetres, seleccioneu l’opció Suprimeix només els actius desvinculats de tots els descobriments o Suprimeix tots els actius desvinculats d'aquest descobriment per al camp Supressió dels actius desvinculats i un període d’execució adequat al cas d’ús
  3. Configureu l’escàner Harbor associant-hi el registre Harbor creat anteriorment

A la interfície de Harbor:

  1. Afegiu Cyberwatch com a escàner de vulnerabilitats amb les dades que acabeu de generar durant la configuració de l’escàner Harbor
  2. Inicieu un escaneig de les imatges Docker presents: a Administration > Interrogation Services > Vulnerability, feu clic al botó Scan now
  3. Marqueu l’opció Automatically scan images on push a la pestanya Configuration de cada projecte del registre
  4. També es pot automatitzar la generació dels SBOM marcant l’opció Automatically generate SBOM on push a la pestanya Configuration de cada projecte del registre

Un cop fets aquests passos, les imatges Docker del registre s’han escanejat i les imatges noves futures s’escanejaran automàticament. A més, el descobriment de registre Harbor permet mantenir actualitzades a Cyberwatch les imatges Docker del registre.

Per anar més enllà

Harbor permet:

  • establir una política de seguretat, per exemple impedint el desplegament d’imatges que tinguin vulnerabilitats que superin una certa criticitat
  • escanejar totes les imatges disponibles al registre
  • planificar els escanejos

Aquestes funcionalitats es detallen a la documentació de Harbor sobre els escanejos de vulnerabilitats.