Controlar el cumplimiento CIS de un FortiGate

Cyberwatch evalúa el cumplimiento de los cortafuegos FortiGate respecto al CIS FortiGate 7.4.x Benchmark v1.0.1, publicado por el CIS en enero de 2026.

Las 64 recomendaciones del benchmark están disponibles en forma de reglas de cumplimiento. 61 de ellas se verifican automáticamente a partir de la configuración del FortiGate, leída mediante su API REST. Las otras tres dependen de su organización y deben verificarse manualmente.

Añadir el FortiGate

El cumplimiento se evalúa en un FortiGate añadido con el conector FortiGate (API), directamente o a través de un FortiManager. Tras su primer escaneo, el activo tiene el sistema operativo FortiOS, al que se aplican las reglas del benchmark.

Un FortiGate escaneado por SNMP también tiene el sistema FortiOS, pero sus reglas no se evalúan: SNMP no da acceso a la configuración.

El perfil de solo lectura preparado para el conector es suficiente, salvo para las cuentas de administrador, que no siempre permite leer: las reglas 2.4.1 y 2.4.2 quedan entonces en estado Pasado, con el motivo.

Asociar los marcos de cumplimiento

Un nuevo FortiGate (API) recibe automáticamente el marco de cumplimiento CIS_Benchmark_level_1, que agrupa las 39 recomendaciones de nivel 1.

Para evaluar también las 25 recomendaciones de nivel 2, añadir el marco de cumplimiento CIS_Benchmark_level_2, o bien CIS_Benchmark, que agrupa ambos niveles. Estos marcos de cumplimiento están presentes por defecto en Cyberwatch.

Funcionamiento de la evaluación

En cada evaluación, Cyberwatch lee la configuración del FortiGate mediante su API, en solo lectura, y después evalúa las reglas. La configuración no se conserva. La evaluación tiene lugar cada 30 días por defecto, según la política del activo.

Las tablas propias de un VDOM, como las reglas de cortafuegos o los perfiles de seguridad, se leen para todos los VDOM. Cuando hay varios, cada constatación indica su VDOM.

Si el FortiGate no responde, o rechaza la clave de API, la evaluación falla y las reglas conservan el resultado de la evaluación anterior. Si una tabla de configuración no es legible (lectura denegada por el perfil, ausente en esta versión de FortiOS, o incompleta), solo las reglas que dependen de ella quedan en estado Pasado, con el motivo.

Las reglas que tratan sobre objetos dan una constatación por objeto, visible en la pestaña «Cumplimiento» del activo: por regla de cortafuegos, interfaz, zona, perfil de seguridad, cuenta de administrador o usuario SNMPv3. Las demás dan el valor leído de cada ajuste, seguido del valor esperado cuando difiere.

Reglas de cortafuegos y perfiles de seguridad

Las recomendaciones sobre los perfiles de seguridad solo tienen en cuenta las reglas de cortafuegos activas que aceptan el tráfico y lo inspeccionan: un perfil solo se tiene en cuenta si la regla activa los perfiles de seguridad (utm-status enable), directamente o mediante un grupo de perfiles. Los perfiles que ninguna regla aplica no se evalúan.

Sin regla de cortafuegos en su perímetro, estas recomendaciones están en Éxito. Si existen reglas pero ninguna aplica un perfil del tipo esperado, la recomendación está en Fallo. Un perfil aplicado pero que no se encuentra en su VDOM da una constatación no evaluada.

Una regla de cortafuegos conduce a Internet cuando su destino es una interfaz con rol WAN, una zona o una zona SD-WAN que contiene una, o any. Sin interfaz con rol WAN, las recomendaciones sobre las reglas hacia Internet (4.1.1 y 4.3.3) quedan en estado Pasado.

Solo se leen las reglas de cortafuegos (Firewall Policy): las políticas de seguridad del modo NGFW basado en políticas no se evalúan.

Recomendaciones verificadas automáticamente

ReglaNivelControl
CIS-FortiGate-1.11Hay un servidor DNS primario o secundario configurado
CIS-FortiGate-1.21Cada zona bloquea el tráfico entre sus interfaces (intrazone deny)
CIS-FortiGate-1.31Ninguna interfaz activa con rol WAN permite la administración por PING, HTTPS, HTTP, SSH, SNMP, RADIUS accounting o Telnet, tanto en IPv4 como en IPv6. El acceso de un FortiManager (fgfm) sigue permitido
CIS-FortiGate-2.1.11pre-login-banner está activado
CIS-FortiGate-2.1.21post-login-banner está activado
CIS-FortiGate-2.1.41La sincronización NTP está activada y hay un servidor NTP accesible seleccionado
CIS-FortiGate-2.1.51El nombre de host no es ni el número de serie ni el nombre del modelo
CIS-FortiGate-2.1.62FortiGuard no ofrece ningún parche más reciente de la rama de FortiOS instalada
CIS-FortiGate-2.1.72auto-install-config y auto-install-image están desactivados
CIS-FortiGate-2.1.82ssl-static-key-ciphers está desactivado
CIS-FortiGate-2.1.92strong-crypto está activado
CIS-FortiGate-2.1.101La administración HTTPS solo acepta TLS 1.3 (admin-https-ssl-versions tlsv1-3)
CIS-FortiGate-2.1.112gui-cdn-usage está activado
CIS-FortiGate-2.1.121log-single-cpu-high está activado
CIS-FortiGate-2.1.132gui-display-hostname está desactivado
CIS-FortiGate-2.2.11La política de contraseñas está activada, cubre las contraseñas de los administradores y las claves IPsec, y exige al menos 14 caracteres
CIS-FortiGate-2.2.21admin-lockout-threshold vale como máximo 3, y admin-lockout-duration como máximo 900 segundos
CIS-FortiGate-2.3.11El agente SNMP está activado, sin comunidad SNMPv1/v2c, con al menos un usuario SNMPv3 activo
CIS-FortiGate-2.3.22Cada usuario SNMPv3 activo está limitado a hosts concretos (notify-hosts)
CIS-FortiGate-2.3.32Ningún usuario SNMPv3 activo puede consultar el agente (queries disable)
CIS-FortiGate-2.3.41El agente SNMP está activado, trap-free-memory-threshold vale al menos 20 y trap-freeable-memory-threshold como máximo 50
CIS-FortiGate-2.4.11Ninguna cuenta de administrador se llama admin
CIS-FortiGate-2.4.21Cada cuenta de administrador está limitada a hosts de confianza. Cuando solo lo están sus hosts IPv4, la constatación invita a verificar el acceso en IPv6
CIS-FortiGate-2.4.41admintimeout vale como máximo 5 minutos
CIS-FortiGate-2.4.51Ninguna interfaz activa permite la administración por HTTP o por Telnet
CIS-FortiGate-2.4.61Cada VDOM tiene al menos una política local-in activa
CIS-FortiGate-2.4.71Los puertos de administración no son 443 y 80, y admin-https-redirect está desactivado
CIS-FortiGate-2.4.81Cada política local-in activa que acepta tráfico aplica el virtual patching
CIS-FortiGate-2.5.12La alta disponibilidad está activada
CIS-FortiGate-2.5.21La HA supervisa al menos una interfaz (monitor)
CIS-FortiGate-2.5.31La HA reserva una interfaz de gestión, con su pasarela
CIS-FortiGate-2.5.42El group-id de la HA no es 0
CIS-FortiGate-3.21Ninguna regla de cortafuegos activa que acepta tráfico utiliza el servicio ALL
CIS-FortiGate-3.31Hay reglas de cortafuegos activas que deniegan el tráfico entrante, en todos los servicios, y el saliente de los servicios de riesgo de la ISDB enumerados por el benchmark. Las reglas invertidas (negate) no cuentan
CIS-FortiGate-3.41Cada regla de cortafuegos activa que acepta tráfico registra todas sus sesiones (logtraffic all), cada regla de denegación el tráfico denegado, y la regla de denegación implícita de cada VDOM también (fwpolicy-implicit-log)
CIS-FortiGate-4.1.12Los perfiles IPS de las reglas hacia Internet bloquean las conexiones a las botnets
CIS-FortiGate-4.1.21Cada regla que acepta tráfico aplica un perfil IPS
CIS-FortiGate-4.2.12Las actualizaciones FortiGuard están activadas en modo automático
CIS-FortiGate-4.2.22Cada regla que acepta tráfico aplica un perfil antivirus
CIS-FortiGate-4.2.32Los perfiles antivirus aplicados bloquean los brotes en cada protocolo que analizan (outbreak-prevention block)
CIS-FortiGate-4.2.42La detección por aprendizaje automático (machine-learning-detection) está activada
CIS-FortiGate-4.2.52La detección de grayware está activada
CIS-FortiGate-4.2.61El análisis en línea del sandbox de FortiGuard está activado, y los perfiles antivirus aplicados lo utilizan en modo de bloqueo en cada protocolo que analizan
CIS-FortiGate-4.2.72Los perfiles antivirus aplicados están en modo proxy y desarman el contenido (CDR)
CIS-FortiGate-4.3.12Los filtros DNS aplicados bloquean los dominios de las botnets
CIS-FortiGate-4.3.21Los filtros DNS aplicados registran todas las consultas (log-all-domain)
CIS-FortiGate-4.3.31Cada regla hacia Internet aplica un filtro DNS
CIS-FortiGate-4.4.11Los filtros web aplicados bloquean las categorías Malicious Websites, Phishing y Spam URLs
CIS-FortiGate-4.5.11Los perfiles de control de aplicaciones aplicados bloquean las categorías P2P y Proxy: la primera entrada dirigida a cada una la bloquea por completo, sin filtro
CIS-FortiGate-4.5.22Los perfiles de control de aplicaciones aplicados bloquean las aplicaciones en un puerto no habitual
CIS-FortiGate-4.5.31Los perfiles de control de aplicaciones aplicados no dejan pasar ninguna categoría sin registrarla
CIS-FortiGate-4.5.41Cada regla que acepta tráfico aplica un perfil de control de aplicaciones
CIS-FortiGate-5.1.11Una automatización activa pone en cuarentena los hosts comprometidos
CIS-FortiGate-5.2.1.12La Security Fabric está activada y tiene nombre, y los registros se envían a FortiAnalyzer. La salida indica el rol del FortiGate, raíz o descendente
CIS-FortiGate-6.1.12La VPN SSL presenta un certificado distinto de los de Fortinet
CIS-FortiGate-6.1.22La VPN SSL solo acepta TLS 1.2 y 1.3, con cifrado fuerte
CIS-FortiGate-7.1.12Se registran todos los tipos de eventos
CIS-FortiGate-7.2.12Los registros se envían a uno de los servidores syslog (syslogd a syslogd4), a uno de los FortiAnalyzer (fortianalyzer a fortianalyzer3) o a FortiAnalyzer Cloud
CIS-FortiGate-7.3.11Los registros enviados a cada FortiAnalyzer activo están cifrados (enc-algorithm high) y son fiables (reliable enable)
CIS-FortiGate-7.3.21Los registros enviados a cada servidor syslog activo están cifrados (enc-algorithm high) y son fiables (mode reliable)
CIS-FortiGate-7.3.31Idéntica a 7.3.2, que el benchmark repite

Los controles retoman el procedimiento de auditoría del benchmark, incluso cuando es estricto: la regla 2.1.10 exige únicamente TLS 1.3, y la regla 2.2.2 una duración de bloqueo de como máximo 900 segundos.

La salida de la regla 5.2.1.1 recuerda lo que queda por verificar manualmente: los ajustes de FortiAnalyzer y las interfaces que utilizan los equipos de la Security Fabric. La regla 6.1.1 no verifica que el certificado esté firmado por una autoridad de confianza.

Recomendaciones no aplicables

Algunas recomendaciones quedan en estado Pasado cuando no se aplican al FortiGate:

  • 1.3, sin interfaz activa con rol WAN: los puertos WAN deben identificarse manualmente;
  • 2.1.6, cuando el FortiGate no dispone de la lista de versiones de FortiOS, por no poder acceder a FortiGuard;
  • 2.5.2 a 2.5.4, en un FortiGate sin alta disponibilidad;
  • 4.1.1 y 4.3.3, sin interfaz con rol WAN: las reglas hacia Internet no pueden identificarse;
  • 6.1.1 y 6.1.2, sin VPN SSL activa;
  • 7.3.1, cuando los registros no se envían a ningún FortiAnalyzer, y 7.3.2 y 7.3.3, cuando no se envían a ningún servidor syslog. La sustitución de la configuración de registro por un VDOM no se lee.

Recomendaciones que deben verificarse manualmente

Tres recomendaciones dependen de su organización:

  • 2.1.3, la zona horaria: su salida indica la zona configurada;
  • 2.4.3, los perfiles de las cuentas de administrador;
  • 3.1, la revisión periódica de las reglas de cortafuegos no utilizadas.

Estas reglas quedan en estado Pasado, con la mención «Manual verification required» seguida del motivo. La ficha de cada regla retoma el procedimiento de auditoría del CIS.

Una vez verificada una recomendación, es posible ignorar la regla y comentar esta decisión.