Detecta errores de configuración de AWS CloudFormation con Snyk IaC
Ilianna Papastefanou
17 de junio de 2021
0 minutos de lecturaNos entusiasma anunciar que Snyk Infrastructure as Code ahora es compatible con AWS CloudFormation. En nuestro informe reciente Perspectivas sobre la seguridad de la infraestructura como código, descubrimos que el 36 % de las personas encuestadas usaba AWS CloudFormation (CF) como su herramienta principal de infraestructura como código. Con Snyk Infrastructure as Code, ahora puedes analizar tus plantillas YAML o JSON de CF con nuestro completo conjunto de reglas de seguridad para AWS.
Con estas nuevas capacidades, puedes tratar tus archivos de CloudFormation como cualquier otro código y aplicar la seguridad desde las primeras etapas del desarrollo, para que sea parte integral de los procesos de desarrollo e implementación de tu infraestructura.
Integra la seguridad donde importa
Esta funcionalidad está disponible tanto al importar un repositorio como mediante nuestra CLI. Así, puedes integrarla en cualquier etapa: desde el desarrollo local hasta el control de código fuente y tus pipelines de CI/CD.
Usamos este repositorio de ejemplo, que contiene archivos de plantilla de CloudFormation no seguros, y lo integramos desde GitHub con Snyk. Así, detectamos una serie de problemas en los archivos de CF.

Puedes expandir el repositorio en Snyk para ver la lista de archivos de configuración analizados. En la pantalla de abajo seleccionamos el archivo db.yml . Aquí puedes ver los problemas de configuración detectados, vinculados a la línea correspondiente de la plantilla de CF original:

También puedes obtener los mismos resultados con Snyk CLI, que procesa los archivos localmente; es decir, no se envían datos a Snyk.
Uso de AWS Cloud Development Kit
AWS Cloud Development Kit (AWS CDK) es un framework de desarrollo de software de código abierto que permite definir los recursos de tus aplicaciones en la nube con lenguajes de programación conocidos. Con AWS CDK, puedes definir tu infraestructura en un lenguaje de programación que conozcas mejor, como TypeScript o Python, en lugar de escribir YAML. Este enfoque ofrece más flexibilidad y accesibilidad: puedes trabajar con un lenguaje y un IDE que ya te resulten cómodos, y usar construcciones de programación para evitar tener que crear plantillas en tus archivos YAML.
También puedes analizar tus archivos de AWS CDK con la funcionalidad iac test de Snyk CLI. Para ello, primero conviértelos a un archivo JSON con el subcomando integrado synth de AWS CDK.
Con otro ejemplo, que usa TypeScript para definir una infraestructura, puedes ejecutar los siguientes comandos para probar las configuraciones de tus pipelines con Snyk CLI:
Este flujo de trabajo es ideal para un pipeline de compilación, ya que se puede automatizar por completo con cada pull request. A la fecha de publicación, los archivos de AWS CDK solo se pueden analizar mediante un flujo de trabajo basado en la CLI.
Reglas completas de seguridad de configuración
La amplitud y profundidad de las reglas de seguridad son importantes para obtener una cobertura completa. Snyk cuenta con un equipo especializado de ingeniería de seguridad que investiga, valida y agrega continuamente nuevas reglas al producto: ya hay más de 100 para AWS, y seguimos creciendo.
Al agregar reglas, garantizamos una cobertura adecuada al combinar las prácticas recomendadas conocidas con nuestras propias investigaciones de seguridad. Las prácticas recomendadas se basan tanto en estándares de proveedores de nube como de la comunidad; por ejemplo, los benchmarks CIS y las prácticas recomendadas para Kubernetes y AWS. Nuestra investigación de seguridad incluye técnicas como ejercicios de modelado de amenazas en patrones de uso clave. Por ejemplo, examinamos la configuración de servicios de Kubernetes administrados para determinar cómo evitar vulnerabilidades mediante el fortalecimiento adecuado de IaC.
Puedes consultar y modificar la gravedad de las reglas de Snyk IaC desde Settings en tu organización de Snyk. En el menú de la izquierda, selecciona Infrastructure as Code. Si quieres limitar la vista a AWS CloudFormation, selecciona AWS en las pestañas debajo de la configuración de gravedad y luego CloudFormation (o Terraform, si lo prefieres). Procuramos que nuestras reglas sean independientes del formato, por lo que la mayoría aparecerá sin importar qué opciones selecciones.

También puedes consultar públicamente la lista completa de nuestras reglas de seguridad para AWS CloudFormation en la sección Reglas de seguridad de nuestro sitio.

Empieza a usar Snyk IaC gratis
Cualquier persona puede probar estas nuevas funciones, incluso quienes tienen un plan gratuito. Empezar es fácil:
Si aún no tienes una cuenta de Snyk, regístrate gratis.
Instala Snyk CLI. Si ya la tienes instalada, verifica que uses la versión 1.629.0 o una posterior para acceder a estas funciones.
Analiza tus archivos de CloudFormation. El comando principal para analizar IaC con las nuevas funciones es:
snyk iac test <path-to-file-or-folder>
Obtén más información sobre las distintas opciones de análisis disponibles en la documentación de Snyk o consulta la documentación de la CLI ejecutando: snyk iac --help
¡Nos encantaría conocer tu opinión! Si ya eres cliente de Snyk, puedes compartir tus comentarios sobre el producto con tu equipo de éxito del cliente. También invitamos a todos a dejar sus comentarios en el foro de la comunidad de Snyk.
Protege la infraestructura desde el origen
Snyk automatiza la seguridad y el cumplimiento de IaC en los flujos de trabajo, y detecta recursos con desviaciones de configuración y recursos faltantes.
