Gestione y corrija las vulnerabilidades de configuración incorrecta de la infraestructura en la nube con Tenable.cs y HashiCorp Terraform Cloud

Las filtraciones de datos en la nube están en alza debido a configuraciones incorrectas evitables. A continuación, se explica cómo reducir el riesgo con una nueva integración entre Tenable.cs y Terraform Cloud.
Los entornos de nube actuales son altamente dinámicos, con nuevas actualizaciones continuamente publicadas en producción y cargas de trabajo que se amplían y reducen en función de la demanda de los clientes. En cuestión de minutos, los ingenieros de la nube pueden poner en marcha e implementar completamente los recursos en la nube. Pero muchas veces, el aumento de la velocidad viene acompañado del aumento en el riesgo. Las vulnerabilidades del sistema causadas por configuraciones incorrectas a menudo se pasan por alto y pueden permanecer sin ser detectadas durante meses. Como resultado, las filtraciones de datos en la nube están aumentando en escala y velocidad. Tan solo más de 30 mil millones de registros fueron expuestos en 200 filtraciones de datos entre 2018 y 2020 debido a configuraciones incorrectas de infraestructura en la nube.
¿Cómo puede reducir las posibilidades de sufrir filtraciones de datos causadas por configuraciones incorrectas de la nube? En esta publicación, explicaremos cómo Tenable y HashiCorp pueden ayudar para resolver estos problemas mediante una nueva integración entre Tenable.cs y Terraform Cloud Run Tasks.
Introducción a aprovisionamiento de nube y Terraform
El aprovisionamiento de los recursos en la nube es un aspecto clave de la implementación de las cargas de trabajo en la nube. Aunque la mayoría de los proveedores de servicios en la nube tienen sus propias utilidades de aprovisionamiento, las mejores herramientas como HashiCorp Terraform ofrecen ventajas que van más allá de lo que ofrecen los proveedores de la nube. El emplear Terraform, una herramienta de Infrastructure as Code (IaC) de código abierto, para el aprovisionamiento de infraestructura proporciona muchas ventajas para la gestión y las operaciones de su entorno. El lenguaje de configuración HashiCorp (HCL) proporciona la capacidad de estandarizar módulos reutilizables de infraestructura que se pueden utilizar en diferentes proyectos y entornos. Al poner en marcha la infraestructura, Terraform lee el estado actual de su entorno y determina los cambios necesarios para configurar el entorno según el estado definido en su IaC. Esto simplifica el proceso de gestión de arquitecturas complejas, que pueden ser frágiles si se mantienen manualmente. IaC permite controlar la versión del código y proporciona una mejor visibilidad de cómo se ha aprovisionado y configurado la infraestructura.
Consideraciones de seguridad clave para Terraform
Terraform también ofrece ventajas para tener una mejor seguridad. El flujo de trabajo que gira en torno al suministro de infraestructura se puede utilizar para proteger a su entorno contra problemas de seguridad. Cuando se ejecuta el uso de una IaC para los cambios en su entorno, el código se puede evaluar con el fin de garantizar que los defectos de seguridad se detecten y mitiguen antes de aprovisionar la infraestructura. Las protecciones operativas o de seguridad se pueden codificar y aplicar a través de pipelines de CI/CD, compuertas u otros medios automatizados para garantizar que su entorno cumpla con sus políticas.
Aunque el uso de herramientas como Terraform simplifica la gestión de la infraestructura, sigue siendo habitual que se produzcan errores de configuración críticos de la infraestructura en la nube. Entre las principales áreas de preocupación para la gestión de vulnerabilidades de los entornos Terraform se incluyen:
- Gestión de secretos: Terraform necesita credenciales para autorizar cualquier acción de API necesaria para aprovisionar la infraestructura especificada en el código. Debido a que estas credenciales proporcionan acceso privilegiado para crear, gestionar y destruir su entorno, debe tener cuidado de asegurarse de que no estén expuestas a personas o procesos no autorizados.
- Gestión del estado del sistema: Terraform utiliza un archivo de estado para dar seguimiento al estado de los recursos de la infraestructura suministrada. Predeterminadamente, el archivo de estado se almacena en el sistema de archivos local del sistema donde se ejecuta Terraform. Almacenar archivos de estado con su código de origen es una mala idea, debido a que pueden contener secretos u otra información confidencial.
- Gestión de dependencias: Terraform usa plug-ins denominados "proveedores" a fin de interactuar con API remotas para los recursos definidos en su código. Estos se descargan en el sistema donde se ejecuta Terraform cuando se utiliza el comando "terraform init". Dado que los proveedores gestionan operaciones poderosas en su infraestructura, es importante descargarlos de fuertes confiables y confirmar que no se hayan adulterado antes de usarlos.
- Gestión de desviaciones: En cualquier entorno empresarial complejo, los cambios manuales pueden ocurrir en tiempo de ejecución mediante mecanismos “break the glass” u otros medios. Estos cambios generan una desviación entre su entorno en el tiempo de ejecución y lo que se definió en su código de Terraform. Si no se corrige en el código fuente, los equipos de compilación seguirán utilizando la versión anterior y/o los sistemas que ya no cumplen con los requisitos de seguridad.
Para obtener más información sobre las consideraciones de seguridad clave de Terraform, consulte el documento técnico “Guía de DevOps para Terraform Security”.
Prevención de las vulnerabilidades de Terraform con Tenable.cs
Tenable.cs es una plataforma de protección de aplicaciones nativa en la nube (CNAPP) para desarrolladores que es fácil de usar. Ella permite a su organización proteger los recursos en la nube, las imágenes de contenedores y los activos en la nube, proporcionando seguridad integral desde el código hasta la nube y las cargas de trabajo. Para aplicar las mejores prácticas, puede evaluar el código mediante una herramienta de análisis de código estático como Terrascan. Terrascan es un proyecto de código abierto creado por Tenable y es el motor de escaneo base para Tenable.cs. Terrascan incluye cientos de políticas en diferentes proveedores escritas en el lenguaje Rego, y evalúa los errores de configuración utilizando el motor Open Policy Agent (OPA). Estas políticas pueden extenderse para incluir los estándares específicos para su entorno. Para aplicarlas como parte de su flujo de trabajo, puede incluir un trabajo como parte de su pipeline de CI/CD que utilice Terrascan para escanear los cambios en sus archivos de HCL en busca de problemas de seguridad. Si se detectan problemas, el trabajo fallará con un mensaje de error que indique que se encontró un problema de seguridad que se debe abordar.
Tenable.cs permite a los equipos de seguridad y operaciones en la nube evaluar las plantillas Terraform en busca de infracciones de las políticas. Usted puede integrar la seguridad de la infraestructura en la nube en el pipeline de DevOps para evitar que los problemas de seguridad lleguen a la producción. También puede solucionar rápidamente las configuraciones incorrectas de IaC directamente en las herramientas de desarrollo, para aplicar las políticas tanto en tiempo de creación como en tiempo de ejecución.


¡Nuevo! Mejor soporte de corrección automatizada con HashiCorp Terraform Cloud Run Tasks
Ahora Tenable fortalece sus capacidades para proteger Terraform con soporte para el nuevo Terraform Cloud Run Tasks de HashiCorp. Terraform Cloud proporciona una solución hospedada para crear e implementar plantillas Terraform. Al emplear el nuevo Terraform Cloud Run Tasks, puede aprovechar Tenable.cs para escanear sus plantillas Terraform durante el paso de implementación de nube de Terraform. La integración permite a los clientes de Terraform Cloud detectar cualquier problema de seguridad dentro de su IaC empleando Tenable.cs como parte de la fase de planificación de la ejecución de Terraform. Mediante la adición de este soporte para Terraform Cloud Run Tasks en Tenable.cs, ayudamos a los desarrolladores a detectar y corregir los riesgos de cumplimiento y seguridad en su IaC para que puedan mitigar los problemas antes de aprovisionar la infraestructura en la nube. .
Además, conocer los pasos exactos de la corrección puede requerir mucho tiempo y ser todo un desafío. Por este motivo, se proporcionan recomendaciones de corrección como parte de la integración bajo la forma de pull requests al repositorio de código fuente asociado al espacio de trabajo Terraform, para ayudar a reparar los problemas encontrados en las plantillas Terraform antes de que se aprovisionen. Los clientes pueden aprovechar más de 1500 políticas en la oferta comercial de Tenable.cs para realizar escaneos a profundidad en Terraform Cloud. Los usuarios interesados en ver la guía de configuración para conectar Tenable.cs a Terraform Cloud Workspace, pueden encontrar la documentación detallada aquí.
Para obtener más información acerca de Tenable.cs, consulte la hoja de datos o acceda al seminario web bajo demanda “Presentación de Tenable.cs: Proteja cada paso, desde el código hasta la nube”.
Artículos relacionados
- Anuncios
- Nube