Ir al contenido

Greenbone Community Edition

Por

Madurezreviewed
Última revisión
Publicado
Última actualización

Durante años, cursos y distribuciones utilizaron OpenVAS como nombre de toda la solución. Esa simplificación ya no describe la arquitectura actual. OpenVAS es el componente de escaneo dentro de Greenbone Community Edition. La plataforma incluye gestión, protocolos, feeds, base de datos, interfaz web y servicios que coordinan el escáner.

Esta distinción importa al diagnosticar. Una interfaz web disponible no demuestra que el feed haya terminado de cargar. Un escáner activo no demuestra que gvmd haya asociado todas las pruebas. Una tarea vacía puede ser un resultado técnico o un despliegue incompleto.

Una instalación comunitaria actual suele incluir:

  • Greenbone Security Assistant (GSA) y gsad para la interfaz web
  • Greenbone Vulnerability Manager (gvmd) para objetos, tareas y resultados
  • ospd-openvas para exponer el escáner mediante OSP
  • OpenVAS y, en despliegues recientes, openvasd
  • PostgreSQL para datos de gestión
  • Redis para el estado del escáner
  • servicios que descargan y cargan los feeds

El usuario crea un objetivo (target), credenciales, una lista de puertos (port list) y una configuración de escaneo (scan configuration). Una tarea (task) relaciona esos objetos. gvmd coordina la ejecución mediante el escáner y almacena el informe. La interfaz consulta al gestor, no habla directamente con cada prueba.

Greenbone publica contenedores comunitarios para evaluación y aprendizaje. Su documentación advierte que no constituyen por sí solos una recomendación de producción. Un despliegue estable necesita diseñar persistencia, copias de seguridad, actualizaciones, monitorización, TLS, autenticación y exposición de la consola.

La guía actual requiere al menos 2 núcleos, 4 GB de RAM y 20 GB libres. Recomienda 4 núcleos, 8 GB y 60 GB. La necesidad real depende del feed, los objetivos y la concurrencia.

El procedimiento oficial descarga un fichero Compose mantenido por Greenbone. Para evitar ejecutar contenido remoto sin inspección:

Descargar e inspeccionar la definición oficial
install -d -m 0750 ./greenbone-community
cd ./greenbone-community
curl --fail --silent --show-error --location \
--output compose.yaml \
'https://greenbone.github.io/docs/latest/_static/compose.yaml'
sha256sum compose.yaml
docker compose --file compose.yaml config --quiet

install -d crea un directorio con permisos 0750. curl --fail convierte errores HTTP en fallo, --location sigue redirecciones y --output escribe compose.yaml. sha256sum registra la identidad del fichero. docker compose config --quiet valida la sintaxis y resolución de la definición sin iniciar servicios.

Lee el fichero y registra las imágenes antes de continuar. La URL latest puede cambiar. Archiva el Compose revisado o fija una versión compatible para poder reconstruir el laboratorio.

Recuperar imágenes e iniciar la plataforma revisada
docker compose --file compose.yaml pull
docker compose --file compose.yaml up --detach
docker compose --file compose.yaml ps

pull recupera las imágenes declaradas. up --detach crea o actualiza los servicios en segundo plano. ps muestra el estado. Una fila running solo confirma el proceso del contenedor.

Las imágenes y datos descargados consumen varios gigabytes. No combines esta instalación con el sistema de cliente. Usa una VM o servidor dedicado y controla los volúmenes.

La configuración comunitaria puede crear admin/admin como credencial inicial. Cámbiala antes de exponer la interfaz a cualquier red compartida. Limita el servicio de escucha a la interfaz de administración y coloca TLS confiable en el punto de acceso.

No publiques:

  • puertos de base de datos o Redis
  • sockets de Docker
  • volúmenes del feed
  • consola web sin control de red
  • credenciales dentro de compose.yaml versionado

El escáner contiene un mapa detallado de vulnerabilidades y activos. Su compromiso puede revelar la red y ofrecer una posición de ataque.

Greenbone consume varios feeds: pruebas de vulnerabilidad, datos SCAP, avisos CERT y objetos del gestor, entre otros. La actualización tiene dos fases:

  1. descargar el contenido
  2. cargarlo en los servicios y bases correspondientes

La descarga terminada no garantiza que GSA pueda usar los tests. En una instalación nueva, la carga puede tardar desde minutos hasta horas.

Antes del primer escaneo:

  • revisa Administration > Feed Status
  • confirma que SecInfo > NVTs contiene pruebas
  • comprueba que la configuración de escaneo tiene pruebas asociadas
  • registra fechas y versiones de feeds
  • revisa los registros si el recuento permanece vacío

Un escaneo que acaba rápido y sin hallazgos mientras el feed se carga no es un control negativo válido.

Objetivo, lista de puertos, credencial y tarea

Sección titulada «Objetivo, lista de puertos, credencial y tarea»

Un objetivo de Greenbone, llamado target en la interfaz, conserva hosts, exclusiones, una lista de puertos (port list), una prueba de disponibilidad (alive test) y credenciales. Una configuración de escaneo, scan configuration, selecciona familias y parámetros de pruebas. Una tarea, task, une objetivo, escáner, configuración, planificación y preferencias de resultados. Los nombres en inglés son los objetos literales que muestra Greenbone Security Assistant.

Mantén separados:

  • objetivo no autenticado
  • objetivo autenticado por plataforma
  • posiciones de red distintas
  • listas de puertos diferentes
  • configuraciones de descubrimiento y vulnerabilidad

Esto permite comparar vistas sin cambiar un objeto durante una ejecución.

La prueba de disponibilidad determina qué hosts continúan. Scan Config Default delega la decisión en la configuración. Otras opciones combinan ICMP, TCP ACK o TCP SYN. Si una red filtra la sonda, el activo puede desaparecer antes de probar puertos.

Greenbone distribuye configuraciones como Host Discovery, System Discovery y Full and Fast. Su disponibilidad y composición dependen del feed.

  • Host Discovery busca sistemas activos.
  • System Discovery amplía inventario y características.
  • Full and Fast selecciona vulnerability tests con criterios de optimización y es un punto de partida general.

El nombre no reemplaza una revisión de familias. Para redes sensibles, duplica la configuración y documenta qué pruebas se deshabilitan. Conserva el identificador del objeto y el estado del feed.

No presentes Full and Fast como intrínsecamente seguro. Las pruebas pueden autenticar, negociar protocolos, leer configuración o enviar entradas que afecten a implementaciones defectuosas.

Greenbone admite credenciales para SSH, SMB y otros mecanismos según el objetivo y la configuración. Un inicio de sesión privilegiado amplía el inventario y la precisión. También amplía el acceso del escáner.

Comprueba:

  • inicio de sesión desde el contenedor o sensor que ejecuta la tarea
  • shell y métodos de elevación disponibles
  • privilegios reales
  • registros de autenticación
  • pruebas informativas que muestran el inventario recuperado
  • diferencias frente a la tarea no autenticada

Una cuenta root o Administrator puede simplificar un laboratorio. En una operación, prefiere una identidad dedicada con los privilegios mínimos que produzcan la cobertura acordada y una ruta de rotación.

Un informe contiene resultados, hosts, puertos, vulnerabilidades y metadatos. La severidad visible puede verse afectada por Quality of Detection, overrides y filtros.

Un override conserva una interpretación local de un resultado. Debe incluir justificación, activo, vigencia y responsable. No elimina el resultado original ni impide ejecutar el test.

Greenbone ofrece formatos como XML, CSV, PDF y otros objetos instalados por feed. El XML nativo conserva más información. Los formatos de presentación pueden omitir campos o quedar deprecated entre versiones. Guarda:

  • informe nativo
  • exportación normalizada para análisis
  • filtro aplicado
  • configuración y objetivo
  • fecha de feed

Una hoja de cálculo generada por una herramienta de terceros puede ayudar a explorar, pero añade otra versión, analizador y transformación. Valídala contra una muestra del XML antes de usarla como evidencia.

Greenbone mantiene gvm-tools, que incluye gvm-cli, gvm-script y gvm-pyshell. Se comunica mediante Greenbone Management Protocol (GMP) y Open Scanner Protocol (OSP).

Instálalo en un entorno aislado. pipx crea y mantiene ese entorno para una aplicación CLI:

Instalar la CLI oficial en un entorno aislado
pipx install gvm-tools
gvm-cli --version

pipx install instala el paquete y expone sus ejecutables. gvm-cli --version registra la versión. Si ya existe, utiliza pipx upgrade gvm-tools solo después de revisar cambios.

Para consultar la versión del gestor mediante el socket local:

Comprobar el protocolo del gestor
gvm-cli socket \
--socketpath SOCKET_PATH \
--xml '<get_version/>'

socket selecciona el transporte Unix. --socketpath SOCKET_PATH apunta al socket expuesto al operador. --xml envía una petición GMP explícita. La señal esperada es una respuesta XML get_version_response con estado satisfactorio y versión. Las rutas dependen del despliegue. No copies una desde otra instalación.

No pases contraseñas en argumentos si el transporte requiere autenticación. Usa los mecanismos seguros documentados por la versión y evita que los secretos aparezcan en el historial o en el listado de procesos.

Estado y registros de la plataforma comunitaria
docker compose --file compose.yaml ps
docker compose --file compose.yaml logs --since 15m SERVICE

logs --since 15m limita el output a los últimos 15 minutos y SERVICE selecciona el componente que se investiga. Empieza por el servicio que posee el estado: sincronización del feed para la descarga, gvmd para los objetos y la carga, ospd-openvas u openvasd para la ejecución y gsad para la interfaz.

Síntoma Primeras comprobaciones
GSA carga, no hay NVTs feed descargado, carga en gvmd, registros y espacio
tarea queda Requested escáner asociado, OSP, colas y recursos
objetivo aparece muerto alive test, ruta, ACL y lista de puertos
escaneo termina sin hallazgos feed, familias, target, descubrimiento y credenciales
informe difiere tras actualizar versiones de feeds, overrides y configuración
CPU o disco saturados tareas concurrentes, PostgreSQL, Redis, feeds y volúmenes

La documentación de Greenbone advierte que paquetes de distribuciones son mantenidos por terceros y pueden estar atrasados o rotos. Diagnostica primero la procedencia. gvm-setup y gvm-start pertenecen a determinados empaquetados, no a la arquitectura universal del producto.

Detener la plataforma conserva los volúmenes:

Detener servicios conservando datos
docker compose --file compose.yaml down

down elimina contenedores y redes creados por Compose. No añade --volumes, por lo que conserva los datos declarados en volúmenes. La eliminación de volúmenes es destructiva y requiere resolver antes el inventario y la copia de seguridad.

Documenta cómo restaurar la base de datos, los feeds, los certificados, las cuentas y las configuraciones. Un fichero Compose sin esos datos reconstruye procesos, no el historial de evaluación.