Seguridad y Gobierno en escenarios DevOps

Publicado el Jul 6, 2020 4:31:18 PM

El proceso de despliegue de aplicaciones a través de contenedores y metodologías basadas en microservicios y DevOps, permiten a las empresas adaptarse al dinamismo del mercado y a las necesidades del negocio rápidamente. Desafortunadamente, el papel de la seguridad en este nuevo contexto a menudo se pasa por alto sin tener en cuenta las consecuencias de los posibles fallos de seguridad que pueden ser muy perjudiciales para la empresa. Desde el área de seguridad de Logicalis, junto con diferentes socios tecnológicos, se ha definido un servicio global y un catálogo de soluciones de seguridad para dar respuesta a la problemática y retos de seguridad y gobierno que implica toda esta nueva cultura de DevOps.

Tradicionalmente, la integración de la seguridad en la metodología de DevOps de una organización no ha permitido seguir el mismo ritmo ágil, y siempre se ha visto como un “stopper” del departamento de desarrollo y operaciones. A eso se suma que la mayoría de las soluciones de seguridad tradicionales no están diseñadas para securizar este tipo de entornos. Con la aparición de nuevos vectores de ataque, y a la vez, nuevos retos tecnológicos en 2019, hemos visto grandes adquisiciones de empresas en el mercado de la seguridad Cloud, protagonizadas por líderes en seguridad tradicional, como Checkpoint, Palo Alto Networks, Trend Micro, F5, CyberArk, y otros, para adaptarse de forma rápida a estas necesidades.

1080x607_(16-9)_places6

El objetivo de Logicalis es ayudar a las organizaciones a implantar una cultura de DevSecOps rápidamente. El término DevSecOps no se refiere a un perímetro de seguridad que rodea las aplicaciones y los datos, sino a la seguridad integrada en ciclo de vida (pipeline) de desarrollo y despliegue de software (CI/CD), y por ello implica tener en cuenta desde el inicio la seguridad de las aplicaciones y de la infraestructura (IaC o Infraestructura como Código).


La idea es concienciar a los clientes de la importancia de detectar los errores en etapas lo más temprana posible del desarrollo, cuando su corrección es más sencilla y menos costosa. La seguridad debe tratars
 como una característica más del diseño (security by design). 

En el pipeline de una aplicación se observan claramente tres fases bien diferenciadas: build o desarrollo, despliegue (pre-runtime), y ejecución (runtime). Existirán controles de seguridad que tendrán más o menos sentido según la fase en la que nos encontremos, y todos ellos implementados de forma automatizada dentro del pipeline, de forma que nunca ralentice el flujo de trabajo de DevOps.

Por ejemplo, la seguridad de la fase de compilación (build) debe centrarse en eliminar vulnerabilidades, malware y código inseguro. En cambio, en la fase de ejecución (runtime), tenemos que asegurar que los containers se están ejecutando en un entorno confiable y no existe ningún comportamiento anómalo que pueda generar una violación de seguridad. Por otro lado, soluciones como “API management” cobran aún más sentido en arquitecturas de microservicios donde nos podemos encontrar con decenas o cientos de microservicios/ funciones que interactúan entre ellas.

El framework de seguridad que ofrece Logicalis a los clientes está complementado con soluciones de diferentes fabricantes, y permite proteger tanto el pipeline y código de la aplicación (DevOps), como también los propios containers, máquinas y entorno en el cual se despliegan y ejecutan. A modo resumen, la visión de Logicalis se centra en las siguientes buenas prácticas:

Escaneo continuo de seguridad:

  • Detección de vulnerabilidades debido a código que proviene de fuentes no confiables.
  • Detección de datos sensibles (tokens, secretos, claves privadas, etc) que puedan estar expuestos
         en código e imágenes.
  • Detección de malware embebido y malas configuraciones.

Monitorización de los containers y detección de comportamientos anómalos:

  • Restringir ciertas llamadas APIs durante la fase de ejecución, y únicamente permitir las conexiones que sean estrictamente necesarias.
  • Monitorización y trazabilidad del comportamiento del container.
  • Conexiones y tráfico sospechoso entre máquinas
  • Monitorización de recursos en los containers (CPU, memoria, peticiones, uso, rendimiento, etc).
  • Controlar tráfico y conectividad entre microservicios (API Gateway).

    Control y trazabilidad de accesos centralizado:
  •  Detección de posible escalado de privilegios (llamadas de sistema no permitidas) y limitar número
          de plugins con exceso de privilegios.
  •  Logging de todos los intentos de acceso a repositorios de datos sensibles.
  •  Analizar comportamiento de las APIs y disminuir el número de APIs expuestas (seguridad API Gateway).

Protección de la infraestructura (containers, host, orquestrador):

  • Detección de posibles ataques de malware o DoS.
  • Protección ante posible inyección de código maliciosos (WAF).
  • Detección de accesos indebidos a las máquinas.

Dicho esto, no existe una única solución de seguridad que cubra todos estos puntos y por ello, se hace necesaria la integración de diferentes soluciones y tecnologías.

Gracias a fabricantes como F5, Palo Alto, CyberArk, o Trend Micro, podemos ofrecer a clientes una aproximación más global que permita desplegar tecnologías diversas como API gateways, gestión de secretos, monitorización y gestión vulnerabilidades, auditoría y compliance continuo, entre otros.

Referencias.

Autor:

David Angulo Jordà

Security BDM Consultant

Logicalis Spain