Adecuación al Esquema Nacional de Seguridad (ENS)

En los siguientes subapartados se relaciona la selección de medidas tecnológicas de seguridad que se resuelven mediante el diseño de la arquitectura de la Plataforma Onesait con un enfoque de seguridad por defecto. También se incluyen las medidas relativas a la implantación y explotación de la plataforma.

Marco operacional

Se compone de las medidas que deben tomarse para proteger el funcionamiento del sistema como un conjunto integral de componentes para un propósito.

Planificación

Análisis de riesgo

Durante la implementación de la plataforma, se realizará un análisis de riesgos utilizando un lenguaje específico, con un catálogo básico de amenazas y una semántica definida. Es decir, una presentación tabular describiendo los siguientes aspectos:

  • Identificar y valorar cualitativamente los activos más valiosos del sistema.
  • Identificar y cuantificar las amenazas más probables.
  • Identificar y valorar las salvaguardas que protegen frente a dichas amenazas.
  • Identificar y valorar el riesgo residual.

Para ello se utilizará como base el catálogo de amenazas basado en la metodología Magerit y proporcionado por la ENS.

La siguiente tabla representa un análisis de riesgos con las amenazas más comunes en este tipo de sistemas.

AMENAZA

Salvaguardas

Riesgo residual

Errores y riesgos no intencionados

[E.1] Errores de usuario

Principio de mínimo privilegio.

Toda la información será rastreada.

Bajo

[E.2] Errores del administrador

La organización llevará a cabo una formación específica para los administradores.

Bajo

[E.4] Errores de configuración

Toda la configuración se prueba en entornos de prueba y preproducción antes de pasar a producción.

Bajo

[E.20] Vulnerabilidades del software

El lanzamiento a producción de una nueva versión se somete a pruebas funcionales y de seguridad en entornos de prueba y preproducción.

Las versiones de software instaladas son versiones estables con los parches de seguridad recomendados por los fabricantes.

Bajo

[E.21] Errores de actualización / mantenimiento de software

El lanzamiento de producción de una nueva versión se somete a pruebas funcionales y de seguridad en entornos de prueba y preproducción.

Bajo

[E.24] Tiempo de inactividad del sistema debido al agotamiento de los recursos

La Infraestructura TIC cuenta con un sistema de monitorización y alerta que alerta al administrador del sistema cuando los recursos alcanzan los límites establecidos.

La infraestructura tiene capacidad elástica.

Bajo

[E.25] Pérdida de equipo


Bajo

[A] Ataques intencionados

[A.3] Manipulación de registros de actividad (log)

Los archivos de registro están protegidos por los usuarios del sistema.

Solo los usuarios administradores pueden acceder a estos archivos con permisos de escritura. Las aplicaciones que generan estos registros tienen permiso de escritura donde el usuario inicia sesión mediante un certificado de clave privada.

Bajo

[A.4] Manipulación de la configuración

Los archivos de configuración se encuentran en ubicaciones protegidas por los usuarios del sistema.

Solo los usuarios administradores pueden acceder a estos archivos con permisos de escritura. Las aplicaciones que generan estos registros tienen permiso de escritura con el usuario conectado mediante un certificado de clave privada.

Bajo

[A.5] Suplantación del usuario

El acceso debe ser mediante autenticación, configurable con doble factor o mediante certificados como el DNI.

La organización deberá seguir en todo momento las normas de manejo de contraseñas establecidas.

Bajo

[A.6] Abuso de privilegios de acceso

La organización debe seguir el principio de las reglas de privilegios mínimos. Se siguen las políticas de formación y sensibilización de la empresa.

Bajo

[A.12] Análisis de tráfico

Todas las comunicaciones deben cifrarse mediante certificados de clave privada y estar firmadas por una autoridad de certificación.

Toda comunicación debe hacerse después de la identificación en el sistema.

Firewall de protección contra ataques.

Bajo

[A.14] Interceptación de información (escuchas)

Todas las comunicaciones deben estar encriptadas mediante certificados de clave privada firmados por una entidad certificadora.

Toda comunicación debe hacerse después de la identificación en el sistema.

Bajo

[A.15] Modificación deliberada de la información

El personal recibe periódicamente cursos de formación y sensibilización en esta materia.

La organización deberá seguir en todo momento las normas establecidas para el manejo de contraseñas.

Bajo

[A.18] Destrucción de información

El personal recibe periódicamente cursos de formación y sensibilización en esta materia.

La información está protegida en los sistemas bajo privilegios de espacio.

La organización deberá seguir en todo momento las normas de manejo de contraseñas establecidas.

Bajo

[A.19] Revelación de información

El personal debe recibir la formación necesaria para no difundir sus contraseñas.

La organización deberá seguir en todo momento las normas de manejo de contraseñas establecidas.

Bajo

Control de acceso

[op.acc.1] Identificación

Cada usuario tiene un identificador único a través de una cuenta. Si un usuario va a tener diferentes roles, ese usuario recibirá diferentes identificadores para que los privilegios y los registros de actividad estén siempre delimitados.

Cada cuenta de usuario tiene una función específica y permisos asociados, que se pueden asignar y recuperar. Además, todas las acciones realizadas por un usuario se registran en un registro de auditoría para que sea posible saber quién ha hecho algo y qué ha hecho alguien.

Las cuentas de usuario son administradas por usuarios con roles específicos, por lo que las cuentas se pueden deshabilitar. Las cuentas deshabilitadas y sus registros de actividad se conservan en el sistema durante un período de tiempo configurable para que se puedan cumplir los períodos de retención aplicables a cada implementación.

[op.acc.2] Requisitos de acceso

El acceso a todos los recursos del sistema está protegido por autenticación y su uso está restringido al usuario que los creó y a los usuarios y grupos a los que se les ha otorgado acceso específicamente mediante roles autorizados.

Existe la posibilidad de marcar los recursos para el acceso público. Esta opción nunca es la opción por defecto y debe ser realizada por un usuario con permisos especiales sobre ese recurso.

El acceso a los parámetros de configuración y módulos/componentes de la Plataforma Onesait está restringido únicamente a usuarios administradores y operadores del sistema.

[op.acc.3] Segregación de roles y tareas

El sistema de control de acceso está diseñado con roles específicos con diferentes funciones dentro del sistema.

A nivel de usuario de la plataforma, los roles que un usuario debe conocer son estos:

  • USER (ROLE_USER): Usuario. Este rol tiene acceso en modo consulta a la plataforma, es decir, puede consumir información de la plataforma generada por otros, pero no puede cargar información. Por lo tanto, puede consumir dashboards, API, ontologías de consulta, ....
  • DEVELOPER (ROLE_DEVELOPER): Desarrollador. Este rol puede utilizar todas las capacidades de DaM e IoT en la plataforma sin restricciones. Puede crear ontologías, APIs, reglas,... Es el típico usuario de plataforma, y ​​el que se crea por defecto. Tiene acceso limitado a las capacidades de IA de la plataforma, para controlar el consumo de recursos de la instalación.
  • ANALYTICS (ROLE_DATASCIENTIST): Científico de datos. Este rol amplía las capacidades del rol de desarrollador, lo que permite el acceso a las herramientas analíticas y de inteligencia artificial. Por lo tanto, tiene acceso al DataFlow, Cuadernos, Modelos, ...
  • ADMINISTRATOR (ROLE_ADMINISTRATOR): Administrador. Este rol tiene acceso de administración al Panel de control de la plataforma. Desde ahí, puede gestionar todos los conceptos de una instancia de plataforma creada por el resto de usuarios, incluyendo la gestión de usuarios, ontologías, permisos, etc...

Internamente, la plataforma gestiona un conjunto de roles que permiten la operación y gestión de una instalación de plataforma:

  • DEVOPS (ROLE_DEVOPS): DevOps, Desarrollo y Operaciones. Este rol se encarga de administrar el proceso de CI/CD de la plataforma. Tiene acceso al Jenkins que se gestiona desde la plataforma, desde donde puede lanzar los pipelines de compilación y generación de versiones, tanto de la plataforma como de los verticales y microservicios desplegados en la plataforma.
  • OPERATIONS (ROLE_OPERATIONS): Operaciones. Este rol sólo tiene acceso a las herramientas de monitorización de la plataforma, pudiendo conocer el estado de cada módulo y generar alertas a partir de los mismos.
  • SYS_ADMIN (ROLE_SYS_ADMIN): Administrador del sistema. Este rol tiene el acceso de administración del sistema, lo que permite el acceso a la infraestructura subyacente de la plataforma.

Más allá de estos roles principales, existen dos roles más con características especiales:

  • VIEWER (ROLE_DATAVIEWER): Visualización de datos. Este rol es un sub-rol del rol USER. Sólo permite el acceso a los Dashboards y al Marketplace.
  • PARTNER (ROLE_PARTNER): Socio. Este rol contribuye al ecosistema de la plataforma al poder crear soluciones que se comercializan junto con la plataforma y por lo tanto tiene todos los permisos del Rol ANALYTICS, y además acceso a una parte de la Consola de Operación de la plataforma para poder implementar y operar su vertical.

[op.acc.4] Proceso de gestión de derechos de acceso

Como consecuencia de la segregación de funciones y tareas materializada en los roles expuestos en el paso anterior, [op.acc.4], Onesait Platform cumple con los siguientes principios en la gestión de derechos de acceso:

  • Mínimo privilegio: Los privilegios de cada usuario se reducen al mínimo estrictamente necesario para el cumplimiento de sus funciones.
  • Necesidad de saber: Los privilegios están limitados para que los usuarios solo accedan a la información que necesitan para cumplir con sus obligaciones.
  • Facultad de autorizar: Única y exclusivamente el personal con competencia para ello podrá otorgar, modificar o cancelar la autorización de acceso a los recursos, de acuerdo con los criterios establecidos por el responsable.

[op.acc.5] Mecanismos de autenticación

Onesait Platform se puede configurar con diferentes mecanismos de autenticación en función de los requisitos de seguridad:

  • Nombre de usuario y contraseña.
  • Certificados digitales: Tales como DNI electrónico u otros, firmados y emitidos por las autoridades competentes.
  • Doble factor de autenticación: Autenticación acompañada de SMS o correo electrónico con código de verificación.

[op.acc.6] Acceso local y [op.acc.7] Acceso remoto

Los intentos de acceso fallidos no revelan información confidencial al usuario. El número de intentos de acceso está limitado de forma configurable,, y el intento de acceso se bloquea temporalmente tras cada fallo para evitar ataques de fuerza bruta.

Al ser una plataforma en modo servicio, todo acceso es remoto. El proveedor de servicios de infraestructura seleccionado permite la creación de VPN en la nube para que sea posible proteger el acceso a los servicios deseados a través de redes privadas.

Explotación

[op.exp.1] Inventario de activos

Se mantendrá un inventario actualizado de todos los elementos del sistema, detallando su naturaleza e identificando al responsable de los mismos, es decir, al responsable de las decisiones relativas a los mismos.

[op.exp.2] Configuración de seguridad

Los equipos deberán estar configurados antes de su entrada en funcionamiento, de forma que:

  • Se eliminan las cuentas y contraseñas estándar.
  • Se aplica la regla de “funcionalidad mínima”: De manera que sólo quedan activas aquellas funcionalidades requeridas para el cumplimiento de requisitos.
  • Las funciones que no sean de interés, no sean necesarias o incluso no sean adecuadas para el fin previsto, serán eliminadas o desactivadas mediante el control de configuración.
  • Se aplicará la regla de "seguridad por defecto". Es decir, todos los recursos protegidos por defecto y los permisos sobre los mismos deben ser otorgados por los usuarios responsables.

[op.exp.3] Gestión de la configuración

La configuración de los componentes del sistema se gestionará de forma continua de modo que:

  • Se mantiene en todo momento la regla de "funcionalidad mínima" ([op.exp.2]).
  • La regla de "seguridad por defecto" ([op.exp.2]) se mantiene en todo momento.
  • El sistema se adapta a nuevos requerimientos previamente autorizados ([op.acc.4]).
  • El sistema reacciona ante las vulnerabilidades reportadas ([op.exp.4]).
  • El sistema reacciona ante las incidencias (ver [op.exp.7]).

[op.exp.4] Mantenimiento

Para el mantenimiento de los equipos físicos y lógicos que constituyen el sistema, se aplicará lo siguiente:

  • Se seguirán las especificaciones de los fabricantes para la instalación y mantenimiento de los sistemas.
  • Se realizará un seguimiento continuo del defecto anunciado.
  • Habrá un procedimiento disponible para analizar, priorizar y determinar cuándo aplicar actualizaciones de seguridad, parches, actualizaciones y nuevos lanzamientos. La priorización tendrá en cuenta la variación del riesgo según se aplique o no la actualización.

[op.exp.5] Gestión del cambio

Se mantendrá un control continuo de los cambios realizados en el sistema, de manera que:

  • Se analizarán las actualizaciones de la Plataforma Onesait para determinar su idoneidad para su incorporación o no.
  • Antes de cargar una nueva versión o una versión parcheada en producción, se probará en una computadora que no sea de producción que la nueva instalación funcione correctamente y no disminuya la efectividad de las funciones requeridas para el trabajo diario. El equipo de prueba será equivalente al equipo de producción en los aspectos que se prueban.
  • Se planificarán cambios para reducir el impacto en la prestación de los servicios afectados.
  • El análisis de riesgos determinará si los cambios son relevantes para la seguridad del sistema. Los cambios que impliquen una situación de riesgo de alto nivel deberán ser aprobados explícitamente antes de su implementación.

[op.exp.8] Registro de la actividad del usuario

La actividad del usuario en el sistema se registrará, de modo que:

  • El registro deberá indicar quién realiza la actividad, cuándo realiza la actividad y sobre qué información.
  • Se incluirá la actividad de los usuarios, y en especial la de los operadores y administradores en la medida en que puedan acceder a la configuración y actuar en el mantenimiento del sistema.
  • Deben registrarse las actividades exitosas y los intentos fallidos.

Onesait Platform implementa la siguiente funcionalidad:

  • La plataforma cuenta con un sistema de auditoría que permite auditar cada operación que ocurre en la plataforma. Estas operaciones incluyen inicios y cierres de sesión en el Panel de Control, comunicaciones entre dispositivos y sistemas, etc.
  • La información asociada a la auditoría se almacena en una ontología particular para cada usuario para que cada usuario pueda acceder a esta información de forma sencilla (y, por ejemplo, crear un panel de seguimiento).
  • Para este propósito, cuando un usuario se registra en la plataforma, se crea una ontología con identificación Audit_ <userName>.
  • Los usuarios administradores pueden acceder a la información de auditoría de cualquier usuario.

[op.exp.9] Registro de gestión de incidentes

Se registrarán todas las actuaciones relacionadas con la gestión de incidencias, de forma que:

  • Se registrará el informe inicial, las acciones de emergencia y las modificaciones del sistema resultantes del incidente.
  • Se registrarán las pruebas que puedan sustentar posteriormente una reclamación judicial, o utilizarse para sustentarla, cuando el incidente pueda dar lugar a medidas disciplinarias contra el personal interno, proveedores externos o el enjuiciamiento de infracciones. Para determinar la composición y el detalle de esta evidencia, se buscará asesoramiento legal especializado.
  • Como consecuencia del análisis de incidentes, se revisará la determinación de eventos auditables.

[op.exp.11] Protección de clave criptográfica

Las claves criptográficas estarán protegidas durante todo su ciclo de vida de acuerdo con los protocolos definidos durante la implementación de la plataforma:

  • Generación.
  • Transporte al punto de uso.
  • Custodia durante la operación.
  • Archivado después de la eliminación de la operación activa.
  • Archiving after removal from active operation.
  • Destrucción definitiva.

Monitorización del sistema

[op.mon.1] Detección de intrusiones

La detección de intrusiones en los sistemas está asegurada por las capacidades del proveedor de infraestructura como servicio AWS, que a través de la monitorización activa de los sistemas contratados a través de Cloudwatch, monitorea cualquier elemento instalado que sea parte de la infraestructura de Amazon Web Services, recopilando datos en forma de logs, métricas y eventos, y ofreciendo una visión unificada y correlacionada de los mismos. Además, Cloudwatch incorpora un sistema de alarma que se puede utilizar para detectar automáticamente comportamientos anómalos en los datos y para la resolución automática de problemas para mantener los sistemas en funcionamiento.

[op.mon.2] Sistema de métricas

Además de la monitorización del proveedor de la Nube, a nivel de monitorización se ofrecen herramientas que permiten consultar el estado de seguridad y monitorear todos los componentes de hardware y software. Además, la plataforma incluye la Consola CaaS, la Interfaz de Usuario de Monitorización y el Módulo de Auditoría de la plataforma.

Medidas de protección

Éstas están enfocadas a proteger activos específicos, de acuerdo a su naturaleza, con el nivel requerido en cada dimensión de seguridad.

Protección de comunicaciones

[mp.com.1] Perímetro seguro

Se proporcionará un sistema de cortafuegos (firewall) para separar la red interna de la exterior. Todo el tráfico debe pasar por este cortafuegos, que sólo permitirá el paso de flujos previamente autorizados.

El firewall contempla, entre otras, las siguientes reglas:

  • Los protocolos y puertos no seguros deben estar deshabilitados por defecto (puerto 80, protocolo http, tcp sin certificado).
  • Bloquear paquetes no válidos.
  • Bloquea nuevos paquetes que no sean SYN.
  • Bloquear valores de MSS poco frecuentes.
  • Bloquear paquetes de subredes privadas (Spoofing).
  • Bloquear ataques de conexión.
  • Limitación de nuevas conexiones por segundo.
  • Bloqueo de paquetes fragmentados.
  • Limitar los paquetes TCP RST entrantes para mitigar flooding de TCP RST.

Durante la implementación de la Plataforma, y ​​en base a un análisis de riesgo, se determinará el conjunto de reglas a implementar en el firewall.

[mp.com.2] Protección de la confidencialidad

Se usarán redes privadas virtuales cuando la comunicación se realice a través de redes fuera del propio dominio de seguridad cuando sea posible. Se utilizarán algoritmos acreditados por el Centro Criptológico Nacional.

[mp.com.3] Protección de autenticidad e integridad

Todas las comunicaciones están protegidas por certificados SSL o certificados electrónicos como el DNI.

Protección de la información

[mp.info.1] Datos personales

De acuerdo con el reglamento de la UE 2016/679 de protección de datos (RGPD, Reglamento General de Protección de Datos), la plataforma adopta los requisitos necesarios en el diseño y desarrollo de software para garantizar la privacidad y protección de datos personales del usuario en cualquier escenario posible. Los usuarios tendrán sus datos personales asegurados y protegidos. Podrán definir restricciones y cesiones de uso de la información, garantizando en todo momento los derechos establecidos en el RGPD.

  • Principio de responsabilidad

Onesait Platform implementa los mecanismos mediante la adopción de las medidas necesarias para el tratamiento de datos personales, tal y como exige la norma, en cumplimiento de:

  • Responsabilidad.
  • Obligación de rendir cuentas.
  • Principios de protección

Desde el inicio de Onesait Platform, el diseño estuvo enfocado al pleno cumplimiento del estándar, adoptando las medidas necesarias en todos los procesos que implican el tratamiento de datos, como norma y desde el origen. La plataforma proporciona mecanismos de autenticación, autorización (por roles) y encriptación (información encriptada), tanto en la transferencia de información de los sistemas y dispositivos a la plataforma, como en el consumo de la información almacenada. Esto garantiza la confidencialidad e integridad de la información almacenada, cumpliendo en todo momento con:

  • Protección de datos desde el diseño y por defecto.
  • Anonimización.
  • Principio de transparencia

Onesait Platform es completamente transparente, tanto a nivel de arquitectura como de gestión de datos. La plataforma es una solución de código abierto, con la versión Onesait Platform Community disponible en GitHub. Onesait Platform proporciona en todo momento:

  • Derecho de acceso.
  • Derecho de borrado.
  • Registro de actividades de procesamiento.
  • Permite la existencia de un oficial de protección de datos.

Un usuario tendrá la posibilidad de gestionar tanto el perfil de ese usuario como toda la información de ese usuario, desde el Panel de Control, manteniendo un principio de total transparencia y privacidad para el usuario.

  • Opciones de registro y privacidad

Para registrar una cuenta en el sistema, los usuarios deben aceptar los términos y condiciones de uso de la plataforma.

Se informa a los usuarios sobre el uso de datos y derechos según el RGPD y cómo ejercerlos (información de contacto). Después de eso, usando solo las credenciales (nombre de usuario / contraseña), los usuarios pueden acceder a su cuenta personal en la plataforma.

Una vez que el usuario ha eliminado su cuenta, toda la información del usuario también se elimina si el usuario la había marcado como "privada". Si la información (ontologías) fue verificada como "pública", esa información permanecerá.

El usuario puede definir la configuración de privacidad de acuerdo con el RGPD:

  • Olvidar mis datos: El usuario puede eliminar cualquier información contenida en las ontologías que posee.
  • Revocar consentimiento: El usuario puede revocar cualquier consentimiento previamente otorgado.
  • Ver mis datos: El usuario puede ver los datos almacenados en las ontologías que posee.
  • Olvídame: El usuario puede borrar el perfil de ese usuario, eliminando toda la información.

[mp.info.9] Copias de seguridad

El sistema aprovechará las ventajas y herramientas que brinda AWS Cloud, específicamente el concepto de instantánea (snapshot) que permite realizar copias de seguridad de los datos, permitiendo tomar instantáneas en un momento dado, de manera incremental, y ahorrando costos de almacenamiento. Estas instantáneas contienen la información necesaria para restaurar datos en un volumen final, produciendo una réplica exacta del volumen original. Los volúmenes replicados cargan los datos en segundo plano, lo que permite comenzar a usarlos de inmediato.

Protección de servicios

[mp.s.2] Protección de servicios web y aplicaciones

Onesait Platform implementa por defecto las siguientes medidas para proteger sus servicios y aplicaciones:

  • Protección contra la automatización. Capacidad para habilitar CAPTCHA.
  • Protección contra la inyección de código.
  • Protección contra secuencias de comandos entre sitios (cross-site scripting).
  • Restricción de permisos y accesos por defecto.
  • Protección contra la falsificación de solicitudes entre sitios (Cross-Site Request Forgery).
  • Cookie de sesión segura.
  • Políticas contra contraseñas débiles.
  • Protocolo SSL y HTTPS inseguro en todos los servicios expuestos.
  • Recursos innecesarios.
  • Control de throttling. Actualización periódica de librerías y herramientas utilizadas en cada release, de forma que se eliminen las vulnerabilidades conocidas.

[mp.s.8] Protección contra denegación de servicio

  • Protección a nivel de aplicación proporcionada por Onesait Platform
    • Limitación del número de accesos erróneos.
    • Control de throttling en las APIs expuestas.
    • Actualización a las últimas versiones de software estables en cada lanzamiento.
  • Protección proporcionada por el proveedor de servicios de infraestructura.

Explicado en la medida de seguridad [mp.com.1]. Perímetro seguro.

  • Dimensionamiento y escalado del sistema

El dimensionamiento del sistema planificado tiene capacidad suficiente para soportar aumentos en la demanda. Además, las capacidades de escalabilidad y robustez brindan la flexibilidad para soportar estos aumentos en la demanda.