Skip to main content

Resumen de AWS en 30

Escrito por
aws feature

29 de marzo de 2023

0 minutos de lectura

El mes pasado, David Schott, arquitecto principal de soluciones para socios, presentó una demostración de cómo Snyk trabaja junto con Amazon Web Services (AWS) para identificar vulnerabilidades en cada nivel del desarrollo y la infraestructura.  

David explicó por qué el desarrollo ágil en la nube requiere un enfoque de seguridad distinto al de simplemente usar los métodos de seguridad de TI del pasado. Luego, mostró un ejemplo en tiempo real de cómo las herramientas de seguridad en la nube de AWS de Snyk pueden encontrar y mitigar vulnerabilidades comunes. Veamos de inmediato su presentación y sus principales conclusiones.

La aplicación moderna: un nuevo perfil de riesgo

Es evidente que el panorama actual de la nube ofrece innumerables beneficios y oportunidades a las empresas. Gracias a la naturaleza adaptable de las operaciones en la nube y la infraestructura como código (IaC), el desarrollo es más ágil que nunca. Pero estos avances en los servicios en la nube también traen consigo un nuevo panorama de riesgos. 

De TI a los servicios de aplicaciones

Antes de que surgieran las prácticas de desarrollo en la nube, los desarrolladores trabajaban según la metodología en cascada. Todo consistía en “lanzar el código por encima del muro” y dejar que los profesionales de seguridad se encargaran de la mayoría de los riesgos que aparecían más adelante. Aunque los desarrolladores se hacían responsables del código de sus aplicaciones y de las bibliotecas de código abierto, una parte mucho mayor de la seguridad estaba a cargo del equipo de seguridad de TI. Este se enfocaba en mitigar los riesgos en recursos como aplicaciones de TI, servidores, máquinas virtuales, redes, vSphere y hardware.

Hoy en día, los desarrolladores asumen mucha más responsabilidad por los servicios en la nube que alojan y ejecutan su código. Por ejemplo, contenedores, IaC y herramientas de orquestación como Kubernetes. Este cambio de responsabilidades significa que el equipo de seguridad de TI ya no puede ser el único responsable de proteger la infraestructura en la nube. En su lugar, se necesita un enfoque de seguridad de aplicaciones centrado en los desarrolladores.

“Hoy en día, los desarrolladores usan la nube, los contenedores y Kubernetes. Esto significa que avanzan más rápido que nunca. También tienen más responsabilidad en estas áreas. Y como no son expertos en todo, es inevitable que surjan vulnerabilidades de seguridad”.

Las aplicaciones modernas son como icebergs

Si observas de cerca cualquier aplicación moderna alojada en un servicio en la nube (por ejemplo, AWS), verás que tiene capas, como un iceberg. Una sola línea de código puede representar todo un ecosistema de bibliotecas de código abierto, contenedores e infraestructura como código. Y cada uno de esos componentes puede tener aún más niveles, porque sus dependencias suelen tener dependencias. La naturaleza interconectada de las aplicaciones actuales dificulta mantenerse al día con la seguridad en la nube.

Cómo encaja DevSecOps en la conversación

La mejor manera de encontrar y mitigar riesgos en este “iceberg” de dependencias es integrar medidas de seguridad en cada etapa del desarrollo (un enfoque DevSecOps). Se trata de incorporar las herramientas adecuadas en tus procesos y en el momento oportuno. Por ejemplo, un equipo de desarrollo necesita conocer las vulnerabilidades del código estático lo antes posible para poder corregirlas poco después de escribirlo. En cambio, los controles de seguridad en tiempo de ejecución relacionados con motores de orquestación como Kubernetes no pueden entrar en juego hasta mucho más adelante en el proceso. Por eso, no basta con incorporar una herramienta de seguridad en una sola etapa del proceso. Los equipos de desarrollo necesitan cobertura de seguridad en cada etapa y en cada capa de sus aplicaciones. 

Cómo trabaja Snyk junto con AWS en cada etapa

Como vimos, ocurren muchas cosas detrás de escena en la mayoría de las aplicaciones modernas. Por eso, es fundamental que los desarrolladores sepan cómo encontrar y mitigar vulnerabilidades en cada área de sus aplicaciones: no solo en el código de la aplicación, sino también en las bibliotecas de código abierto, los contenedores y la infraestructura en la nube que lo respaldan. 

Snyk creó herramientas para cada pieza de este rompecabezas, diseñadas específicamente para trabajar junto con los servicios en la nube. En su demostración, David explicó cómo Snyk ofrece herramientas de seguridad en la nube de AWS para cada “pieza del iceberg”.

AWS CodePipeline (IDE)

Snyk permite a los desarrolladores integrar comprobaciones de seguridad en su AWS CodePipeline. Nuestra solución funciona como una “barrera de seguridad” en el pipeline y evita que el código vulnerable pase a la siguiente etapa del ciclo de vida del desarrollo. Además, ofrecemos a los desarrolladores y equipos de seguridad una vista “en vivo” de las vulnerabilidades de terceros y de código abierto. Gracias a esta retroalimentación en vivo, los desarrolladores ya no tienen que perder tiempo esperando análisis periódicos.

La funcionalidad "monitor" de Snyk también envía los resultados de los análisis a la interfaz de usuario de Snyk para analizarlos en más detalle, monitorearlos continuamente y volver a analizarlos. Esto permite que los equipos vean nuevas vulnerabilidades en la interfaz de usuario de Snyk sin tener que volver a compilar el software en CI/CD.

La integración de Snyk con CodePipeline también es sencilla de configurar. En cuestión de minutos, Snyk se integra con CodePipeline, ya sea mediante la autenticación con una cuenta de Snyk existente o con la opción de crear una nueva. Una vez integrada, puedes crear un pipeline con Snyk o agregar nuestras funciones de seguridad como una etapa de un pipeline existente.

Amazon ECR (registro de contenedores) 

La plataforma Snyk también puede integrarse con Amazon ECR. De hecho, Snyk Vulnerability Database ya está incorporada en Amazon Inspector como parte de nuestra alianza con AWS. La funcionalidad de Snyk permite que su herramienta analice imágenes de contenedores, instancias Amazon EC2 y AMI en busca de vulnerabilidades de aplicaciones. 

Aunque ya estamos integrados en Amazon Inspector, Snyk Security puede ofrecer información adicional sobre las vulnerabilidades de tu registro de contenedores. La plataforma Snyk analiza activamente tu instancia de Amazon ECR para detectar vulnerabilidades en las imágenes de tus contenedores y sus imágenes base. Ayudamos a los desarrolladores a mitigar estos riesgos con recomendaciones para reemplazar las imágenes base vulnerables por opciones menos riesgosas, y podemos abrir un pull request para hacer el cambio en el código fuente. 

Amazon EKS (entorno de Kubernetes)

Snyk también puede trabajar junto con entornos de ejecución. Nuestras herramientas de seguridad en la nube de AWS trabajan junto con Amazon EKS para identificar problemas de seguridad que aparecen en tus contenedores cuando están en ejecución. Al igual que con la integración de ECR, ofrecemos recomendaciones para actualizar las imágenes base y detalles adicionales sobre la seguridad con la que se ejecuta el contenedor en Kubernetes. 

AWS CloudTrail Lake

En un momento de la demostración, David mostró cómo un desarrollador o experto en seguridad podría ignorar una vulnerabilidad de seguridad (CVE). Las acciones de los usuarios, como ignorar vulnerabilidades, cambiar roles o membresías y modificar ajustes, entre otras, se registran en los registros de auditoría de Snyk. Snyk ofrece una API para que los clientes accedan a sus registros de auditoría, pero tiene limitaciones. Por ejemplo, los registros se conservan durante 90 días y luego se eliminan. Para resolverlo, Snyk se integra con AWS CloudTrail Lake, lo que permite a los clientes enviar rápida y fácilmente sus registros de auditoría desde la plataforma Snyk a su entorno de AWS. AWS CloudTrail Lake permite consultar los registros de auditoría mediante SQL y conservarlos durante un período configurable de hasta 7 años. 

AWS Well-Architected

Las capacidades de generación de informes de Snyk permiten a los clientes segmentar y analizar sus datos de distintas maneras. Por ejemplo, puedes filtrar los problemas de seguridad para mostrar solo los que se pueden corregir automáticamente y tienen una gravedad crítica o alta, lo que da como resultado una lista más breve y práctica de problemas por corregir. La página Resumen de problemas muestra tendencias como los problemas nuevos frente a los corregidos y el tiempo promedio de resolución (MTTR); además, estas tendencias se pueden desglosar por proyecto o equipo. En el contexto de Snyk Cloud, mostró cómo las configuraciones incorrectas en la nube se relacionan con estándares de cumplimiento como HIPAA, SOC2, PCI-DSS y otros. Snyk también es compatible con AWS Well-Architected Framework, que se centra en 6 pilares, como seguridad, confiabilidad y otros. En cuestión de minutos, los clientes de Snyk pueden analizar su entorno de AWS para identificar dónde no cumplen estas prácticas recomendadas y luego tomar medidas para corregir los problemas y mejorar su arquitectura de AWS.

Seguridad de AWS con Snyk

Si quieres ver nuestras herramientas de seguridad en la nube de AWS en acción, no te pierdas la presentación del resumen de AWS en 30 de David Schott. Además, descubre qué errores de configuración comunes de AWS podrían estar ocultos en tus aplicaciones.

Seguridad de IaC diseñada para desarrolladores

Snyk protege tu infraestructura como código desde el ciclo de vida del desarrollo de software hasta el runtime en la nube con un motor unificado de políticas como código, para que todos los equipos puedan desarrollar, implementar y operar de forma segura.