Volver

Innovar sin comprometer la seguridad: WAX Conf 2024

Imagen del slider

17 de julio de 2024

La pesadilla de los hackers: una infraestructura sin secretos

En el mundo de la ciberseguridad, gestionar los secretos es un auténtico quebradero de cabeza. Imagina una caja fuerte llena de contraseñas, claves de API y certificados... ¡Eso es lo que hace salivar a los ciberdelincuentes! En la WAX CONF 2024, Thibault Lengagne compartió su trayectoria hacia una infraestructura «Zero-Creds» (sin secretos), donde esos valiosos tesoros desaparecen como por arte de magia. ¿Listos para el truco de magia?

Contexto y solución Zero-Creds 

Según Verizon, el 49 % de los ciberataques se aprovechan del robo de información confidencial. Sí, tus contraseñas y claves pueden seguir utilizándose mucho tiempo después de haber sido robadas, como una vieja película que vuelven a poner en la tele. Pero, ¿y si pudiéramos construir un mundo sin secretos a largo plazo, reduciendo así las posibilidades de ser hackeado? ¡Pues bien, Thibault dice que es posible!

Ha propuesto una serie de artilugios tecnológicos para librarnos de esos secretos que tanto nos estorban:

  • SSO (inicio de sesión único) y OIDC (OpenID Connect)para una autenticación centralizada sin tener que recordar mil y una contraseñas. ¡Una sola basta!
  • Cloud IAM (gestión de identidades y accesos)yWorkload Identitypara una gestión de identidades y accesos altamente segura e integrada.
  • Intermediación de credenciales de Vaultyacceso «just-in-time»para una gestión dinámica y temporal de los accesos. ¡Adiós a las contraseñas eternas!

Mecanismos y herramientas para la rotación de claves

¡Rotar, rotar, esa es la clave! Thibault ha mostrado cómo automatizar la rotación y la gestión de claves secretas:

  • Vaultpara almacenar tus secretos de forma segura y distribuirlos discretamente a las aplicaciones que los necesitan.
  • SOPS (Secrets OPerationS)para cifrar los datos confidenciales directamente en el código fuente. Se añade una capa de seguridad, de forma discreta y sin que se note.
  • External-secretspara hacer referencia a los secretos necesarios desde un almacén de secretos, sin complicaciones.

Ventajas de un enfoque sin credenciales

Pasarse al modelo Zero-Creds es un poco como pasar a la velocidad de la luz:

  • Reducción del riesgo de ataqueen un 60 %. ¡Se acabó la reventa de secretos robados y los hackers se ven obligados a dejar rastros! Ya están llorando.
  • Facilita el desarrollo. ¡Menos complejidad, más diversión! Tus desarrolladores te lo agradecerán.
  • Mayor cumplimiento normativo y seguridad integradosen el diseño, con auditorías de acceso simplificadas y procedimientos de emergencia más eficaces. ¡Todos salen ganando!

¿Se han encontrado alguna limitación? 

Bueno, no todo es de color de rosa en el mundo Zero-Creds. Hay algunos retos, sobre todo con las aplicaciones antiguas a las que no les gustan los nuevos sistemas de autenticación, como el SSO. ¡Pero que no cunda el pánico! La integración de tecnologías como Boundary o las adaptaciones específicas para estos «dinosaurios» informáticos pueden salvar la situación.

Al eliminar los credenciales a largo plazo, podemos proteger nuestros entornos y facilitar el trabajo de los equipos de desarrollo. Entonces, ¿estáis listos para decir adiós a las credenciales y pasar página en la lucha contra los ciberataques? ¡Vamos a por el Zero-Creds!

 

Guía de supervivencia para una aplicación de alta disponibilidad en un clúster de Kubernetes compartido

¡Bienvenidos al dinámico mundo de la observabilidad y la alta disponibilidad! François Berthault ha compartido sus dos años de emocionantes experiencias con una plataforma de observabilidad «casera» en un clúster de Kubernetes compartido. Esta guía de supervivencia está repleta de consejos prácticos para mantener un rendimiento óptimo en un entorno compartido.

El conjunto de herramientas de observabilidad de François 

Empezó con fuerza presentando su conjunto de herramientas de observabilidad, la pieza clave de cualquier infraestructura de Kubernetes que se precie:

  • Registros: Quickwit, Elastic y Kibana son los mejores para una gestión fluida y eficaz de los registros de eventos.
  • Metrología: Victoria Metrics, Prometheus y Grafana Mimir supervisan rigurosamente las métricas, con alertas y un seguimiento preciso.
  • Traces y APM: sistemas de rastreo para seguir cada solicitud paso a paso e identificar hasta el más mínimo problema de rendimiento.

Perfilado y pruebas de estrés: a prueba de balas

Para crear aplicaciones tan sólidas como una roca, François utiliza técnicas avanzadas de perfilado:

  • Pruebas de estréscon k6 yingenieríadelcaosmediante Chaoskube y Litmus, para evaluar la resiliencia saturando recursos como los discos y la RAM.
  • Kyvernopara la realización de pruebas de seguridad de aplicaciones estáticas (SAST) en los manifiestos de Kubernetes, lo que garantiza una seguridad proactiva.

Dominar la gestión de recursos

En un clúster compartido, la gestión de los recursos es fundamental. A continuación te explicamos cómo hacerlo:

  • Desalojo de pods: Análisis de los desalojos para optimizar la estabilidad de las aplicaciones.
  • Límites de memoria y CPU: límites estrictos para garantizar una distribución equilibrada de los recursos y evitar conflictos.
  • Calidad de servicio (QoS): Políticas de QoS para dar prioridad a las cargas de trabajo críticas y garantizar un rendimiento óptimo.

Implementaciones más fluidas que nunca

François tiene algunos consejos de experto para que las implementaciones salgan a la perfección:

  • Lanzamientos «canary» eimplementaciones «blue-green»: para probar las nuevas versiones en producción sin estrés.
  • Keda para Horizontal Pod Autoscaler (HPA): uso de métricas personalizadas para una escalabilidad dinámica basada en el rendimiento real de las aplicaciones.

Ajustes dinámicos y la API de Kubernetes

Además, explora soluciones de vanguardia para una gestión óptima de los recursos:

  • Vertical Pod Autoscaler (VPA): Con una política de redimensionamiento «InPlace», los recursos se ajustan sin necesidad de reiniciar los pods.
  • API de Kubernetes: supervisión integrada de métricas de CPU y RAM para una gestión ágil y precisa de las cargas de trabajo.

Conclusión: hacia una observabilidad proactiva

Para concluir, destaca la importancia de la observabilidad y la gestión proactiva en entornos compartidos de Kubernetes. Observar, investigar, comprender, implementar y compartir: este ciclo permite mantener un rendimiento y una disponibilidad óptimos, al tiempo que contribuye a la evolución continua del ecosistema de Kubernetes. ¡Gracias a esta guía de supervivencia, estás listo para afrontar los retos futuros con confianza y experiencia!

 

Revisión de los flujos de trabajo de CI/CD: hacia un flujo de trabajo ideal

Thomas Boni nos invita a explorar el desarrollo y la optimización de los flujos de trabajo de CI/CD, haciendo hincapié en la importancia de la funcionalidad, la seguridad, la facilidad de mantenimiento y la observabilidad. Este recorrido está salpicado de estrategias probadas, errores comunes y valiosas lecciones.

Conceptos básicos de CI/CD

Thomas repasa los principios básicos de CI/CD, fundamentales para comprender los retos y los objetivos de la optimización de los flujos de trabajo. La integración continua y el despliegue continuo son esenciales para la automatización de las pruebas, la integración y el despliegue de las aplicaciones.

Experiencias compartidas

Una experiencia relevante que se mencionó se refería a la implementación de un proceso de CI/CD en las instalaciones de un cliente. La creación de un archivo.gitlab-ci.ymlparecesencilla a primera vista, pero requiere un profundo conocimiento de numerosos aspectos:

  • Aprendizaje de la sintaxisespecífica de la herramienta.
  • Identificación de las tareas que pueden automatizarsesin intervención humana.
  • Selección de las herramientas y las imágenesadecuadas.
  • Pruebas de los trabajosy control de calidad de los resultados.

Auditorías y errores habituales 

Thomas destacó la importancia de auditar los procesos para identificar fallos de seguridad y prácticas deficientes, tales como:

  1. Copiar y pegarel mismo código de pipeline en varios proyectos sin la documentación adecuada.
  2. Reacción inadecuada antevulnerabilidades críticas(por ejemplo, comentar el trabajo de CI en lugar de resolver el problema).
  3. Gestión inadecuada de las autenticaciones, como la exposición de tokens en los archivos de configuración.
  4. Uso imprudente de nuevas dependencias, al optar por imágenes de Docker no verificadas y potencialmente peligrosas.

Para hacer frente a estos retos, se han propuesto varias estrategias:

  • Creación de plantillas centralizadas, con control de versiones, documentadas y personalizables para los distintos lenguajes y marcos de trabajo.
  • Utilización de variables de CI/CDo, a ser posible, de un servicio externo de gestión de secretos para proteger el acceso y el uso de la información confidencial.
  • Creación de una lista blanca de registrospara garantizar que solo se utilicen imágenes verificadas y seguras.
  • Simplificación de los flujos de trabajoyreferencia precisa de las versionespara todas las dependencias externas.
  • Auditorías periódicas de las tuberíaspara mantener los estándares de seguridad y rendimiento.

 

Para concluir, Thomas presenta la herramientaR2DevOps, diseñada para ayudar a los equipos a cumplir con las mejores prácticas de seguridad y rendimiento en sus procesos de CI/CD. También menciona recursos esenciales como los «OWASP Top Ten CI/CD Security Risks», los «CIS Benchmarks», las directrices NIS2 y las normas SLSA para orientar los desarrollos futuros.

Esta presentación nos ha ofrecido una valiosa visión general de los retos y las soluciones en la optimización de los procesos de CI/CD. Siguiendo sus consejos y aplicando las mejores prácticas propuestas, las organizaciones no solo pueden mejorar la eficiencia de sus procesos, sino también reforzar significativamente su seguridad.

 

Gestión de clústeres de Kubernetes sin conexión a Internet: estrategias y herramientas

Christophe Jauffret abordó un reto habitual pero complejo: gestionar clústeres de Kubernetes en entornos con acceso a Internet limitado o inexistente. Esta situación es frecuente en entornos empresariales, donde la seguridad y el cumplimiento normativo imponen restricciones estrictas a la conectividad de red.

En muchas empresas, el acceso a Internet no es algo que se dé por sentado. Restricciones como los cortafuegos, los servidores proxy, las zonas desarmadas (DMZ) y las listas de control de acceso (ACL) crean un entorno en el que cada recurso de red debe planificarse y justificarse cuidadosamente. De ahí la importancia de adaptar las herramientas y las prácticas para garantizar una gestión eficaz de los clústeres de Kubernetes en estas condiciones.

Herramientas y estrategias para la gestión sin Internet

Durante su intervención, Christophe presentó varias soluciones y herramientas para facilitar la gestión de clústeres de Kubernetes sin conexión directa a Internet:

  • Entorno de ejecución de contenedores y registro: adaptar los entornos de ejecución de contenedores y utilizar registros internos para gestionar localmente las imágenes y las configuraciones.
  • Crane y Skopeo: Utiliza herramientas como Crane para comprobar dónde se almacenan las imágenes y evitar problemas relacionados con el uso de CDN. Skopeo se puede utilizar para sincronizar registros públicos de Docker con un registro interno, lo que facilita la gestión de imágenes en un entorno aislado.
  • Gestión de políticas con Kyverno: Configurar Kyverno para validar y modificar las solicitudes en tiempo real, y para automatizar la gestión de políticas, incluido el redireccionamiento de solicitudes a registros locales.

Seguridad y cumplimiento normativo

Las normas de seguridad son fundamentales en entornos con acceso restringido:

  • Filtrado de destinos y proxies de red: Establecer normas estrictas para el filtrado de destinos y configurar los proxies en los entornos de ejecución de los contenedores para garantizar una comunicación segura y controlada.
  • Autenticación y DMZ: Implementar políticas de autenticación para los usuarios y configurar las zonas desmilitarizadas para proteger las redes internas.

Ejemplos prácticos

Christophe ha compartido varios ejemplos de cómo se han aplicado estas herramientas y estrategias:

  • Harbor: Utilizar Harbor como registro local para gestionar las imágenes de contenedores en un entorno aislado, lo que permite una sincronización eficaz y segura de las imágenes necesarias.
  • Transmisión de imágenes con stargz-snapshotter: En el caso de imágenes Docker de gran tamaño, el uso de técnicas como la transmisión multiparte con stargz-snapshotter reduce significativamente el tiempo de descarga de las imágenes, lo que optimiza el rendimiento en entornos con ancho de banda limitado.

La gestión de clústeres de Kubernetes sin acceso directo a Internet es compleja, pero factible gracias a la adopción de estrategias y herramientas adecuadas. Las soluciones presentadas por Christophe Jauffret ofrecen medios prácticos para superar los retos de seguridad, cumplimiento normativo y rendimiento en entornos altamente restringidos.

 

VM o Bare Metal: ¿Dónde ejecutar tus cargas de trabajo de Kubernetes?

Ventajas e inconvenientes de las máquinas virtuales y los servidores físicos

Rendimiento:

  • Bare Metal: suele ofrecer un mejor rendimiento general, ya que no hay ningún hipervisor que consuma recursos. Esto resulta especialmente ventajoso para aplicaciones que consumen muchos recursos.
  • VM: Puede presentar un rendimiento ligeramente inferior debido a la sobrecarga del hipervisor, pero ofrece una mayor flexibilidad y eficiencia en la gestión de los recursos.

Escalabilidad:

  • Bare Metal: La ampliación puede resultar más costosa y lenta, ya que a menudo requiere la adquisición de hardware adicional y una configuración manual.
  • VM: Permite un escalado más rápido y flexible gracias a la creación rápida de nuevas instancias de VM sin necesidad de una inversión inmediata en hardware.

Coste:

  • Según un estudio de Principled Technologies para VMware, aunque el uso de máquinas virtuales conlleva un coste adicional debido al hipervisor, también puede permitir la consolidación de recursos, reduciendo así el número de servidores físicos necesarios, así como los costes asociados al mantenimiento y al alojamiento.

Seguridad:

  • Bare Metal: Un menor número de capas de software puede suponer menos vectores de ataque, pero también puede significar menos posibilidades de segmentación.
  • VM: Ofrece mejores oportunidades para la segregación de cargas de trabajo. La separación virtual de los clústeres puede reducir el impacto de una CVE (Common Vulnerabilities and Exposures) al limitar los riesgos a instancias de VM específicas, en lugar de a todo el servidor físico.

Gestión diaria

  • Mantenimiento y operaciones continuas (MCO): Las máquinas virtuales pueden facilitar la gestión gracias a las herramientas de gestión del hipervisor, lo que permite realizar actualizaciones de firmware y aplicar parches de seguridad sin interrumpir el funcionamiento del sistema.
  • Implementación de clústeres de Kubernetes: Las máquinas virtuales permiten una implementación más rápida de los clústeres gracias a la posibilidad de duplicar configuraciones e implementar nuevas instancias sin intervención física.

 

Gauthier Leblanc concluye que la elección entre máquinas virtuales (VM) y Bare Metal para Kubernetes depende en gran medida de las necesidades específicas de la empresa en cuanto a rendimiento, coste, seguridad y gestión. Las máquinas virtuales ofrecen flexibilidad, facilidad de gestión y un mayor aislamiento para la seguridad, mientras que el Bare Metal puede ser preferible para aplicaciones que requieren el máximo rendimiento. La decisión final debe basarse en una evaluación minuciosa de las necesidades específicas y en los resultados de pruebas específicas del entorno y las cargas de trabajo previstas.

 

Conclusión

Al dar inicio a esta edición de WAX, las ideas y las innovaciones compartidas siguen resonando, preparándonos para afrontar con valentía los retos tecnológicos que nos esperan. Estas conferencias nos invitan a una reflexión profunda:

¿Cómo podemos seguir innovando y, al mismo tiempo, garantizar la seguridad y el rendimiento en un mundo en el que las amenazas evolucionan tan rápido como las tecnologías?

Mientras nos preparamos para los próximos capítulos de nuestro sector, mantengamos nuestro compromiso de convertir estos retos en nuevas oportunidades.

Muchísimas gracias al equipo de «Filles et Garçons de la Tech» por una organización impecable. ¡Enhorabuena por este evento memorable y enriquecedor!

 

Lionel GAIROARD

Responsable de DevSecOps

Guerra económica y protección de datos personales (portada)
5 de septiembre de 2024

Guerra económica y protección de datos personales

Guerra económica y protección de datos personales
Más información
Un dispositivo de red de bolsillo para pruebas de penetración simplificadas
13 de agosto de 2024

Un dispositivo de red de bolsillo para pruebas de penetración simplificadas

Thomas ESKENAZI analiza en profundidad la conferencia de Clovis Carlier en Hack 2024.
Más información
WAX Conf 2024: Cuando la ingeniería de plataformas despega portada
10 de julio de 2024

WAX Conf 2024: Cuando la ingeniería de plataformas despega

El pasado 6 de junio, tuve el privilegio de asistir a la WAX Conf 2024 en Aix-en-…
Más información
Configurar la recopilación de registros en un entorno de AWS con CI/CD
4 de julio de 2024

Configurar la recopilación de registros en un entorno de AWS con CI/CD

Cuando se desea enviar a un SIEM los registros procedentes de diversas…
Más información
Exploración de las funciones avanzadas de las soluciones IGA Cover
25 de junio de 2024

Exploración de las funciones avanzadas de las soluciones IGA

Descubra las funciones esenciales de las soluciones de IGA, incluida la gestión…
Más información