Denys Rudyi - Fotolia

Resolver Problemas Consiga ayuda para problemas específicos con sus proyectos, procesos y tecnologías.

Proteja su aplicación sin servidor con esta combinación de herramientas de AWS

A medida que avanzan hacia plataformas sin servidores, como Lambda, los equipos de desarrollo y operaciones necesitan adquirir una nueva mentalidad, y un conjunto de herramientas, para mantener sus cargas de trabajo seguras.

Si bien Amazon ofrece una gama de servicios para detectar y frustrar riesgos potenciales dentro de una implementación en la nube, las plataformas sin servidor, como AWS Lambda, abren un mundo completamente nuevo de desafíos y requisitos de seguridad.

Afortunadamente, existen varias mejores prácticas y herramientas que los equipos de desarrollo pueden usar para garantizar la seguridad de las aplicaciones sin servidores.

Detecte amenazas con aprendizaje automático

Amazon GuardDuty es un servicio totalmente administrado que supervisa la actividad inusual en su cuenta de AWS. Proporciona soporte habilitado para aprendizaje automático para la detección inteligente de amenazas y utiliza información de otras cuentas AWS comprometidas para ayudar a proteger la suya. Por ejemplo, si cientos de cuentas de AWS repentinamente ven actividad de una determinada dirección IP o rango, podría indicar una amenaza potencial.

Amazon ya ofrece capacidades automáticas de detección y prevención de amenazas, pero GuardDuty le permite profundizar en todas las actividades de una cuenta. Cuando el servicio detecta una amenaza, los desarrolladores pueden elegir responder de dos formas: bloquear automáticamente una actividad específica o ejecutar una función Lambda personalizada para realizar una acción en particular, como actualizar las reglas de seguridad de la nube privada virtual para bloquear una IP maliciosa.

Identifique las vulnerabilidades de dependencia

Los ataques más comunes en una aplicación sin servidor apuntan a sus dependencias. Hay muchos paquetes que usan casi todas las aplicaciones de Node.js, como Request, el kit de desarrollo de software de AWS y Lodash. Incluso si una aplicación no usa directamente uno de estos paquetes, es probable que use una dependencia que sí lo haga. De hecho, es fundamentalmente imposible, sin mencionar mal aconsejado, que una aplicación sin servidor no use ningún código externo, por lo que los equipos de desarrollo y operaciones deben adaptarse a este modelo.

Con los sistemas CI/CD, la mayoría de los equipos optan por descargar automáticamente las dependencias en el momento de la compilación. Esto ayuda a limitar el tamaño de los repositorios y garantiza que los paquetes estén actualizados con parches de seguridad, pero también presenta vulnerabilidades potenciales cuando los desarrolladores interactúan con el administrador de paquetes de Node u otros repositorios de paquetes. Para ayudar a mitigar esto, la comunidad de Node.js agregó soporte para archivos de bloqueo de paquetes con hashes locales para verificar versiones confiables de paquetes.

Pero incluso con un paquete de confianza las vulnerabilidades podrían surgir. Hay servicios, como Snyk, que pueden buscar problemas conocidos después de que un equipo de desarrollo los detecta, pero esto aún no ayudará a abordar las amenazas desconocidas.

Mantenga registros con CloudTrail

Con AWS CloudTrail, un equipo de operaciones puede transmitir registros de actividad desde una cuenta de AWS directamente a S3 o Lambda. API Gateway, Lambda y DynamoDB son compatibles con los registros de CloudTrail, que brindan a los desarrolladores más transparencia en una aplicación sin servidor.

Los eventos de CloudTrail indican cuándo ocurre una actividad para un servicio en particular y qué cuenta de AWS realizó la actividad. Por ejemplo, si uno de sus clientes se queja de una eliminación de registros, puede verificar los registros para rastrear exactamente quién emitió la solicitud de DELETE de DynamoDB y cuándo. Además, para cumplir con ciertas regulaciones de cumplimiento, es importante tener una idea de quién solicitó acceso a registros particulares, lo que ahora puede lograr a través de CloudTrail también para servidores.

Cuando un equipo de operaciones envía eventos de CloudTrail a Lambda, puede monitorear actividades inusuales, incluidas las de una dirección IP sospechosa, así como cualquier agente malintencionado conocido o eventos de procesamiento a través de modelos de aprendizaje automático. También hay varias aplicaciones sin servidor, disponibles en el repositorio de aplicaciones Serverless específicamente diseñado para el cumplimiento y para recibir registros de CloudTrail.

Bloquee la dirección IP incorrecta con WAF

Amazon Web Application Firewall (WAF) es otro servicio para equipos de desarrollo que ejecutan aplicaciones sin servidor a través de Lambda y API Gateway. En un entorno informático tradicional, los desarrolladores podrían usar reglas de firewall para evitar la actividad de direcciones IP malas conocidas que podrían afectar sus sistemas o atacar los inicios de sesión de los usuarios. En un modelo sin servidor, sin embargo, el proveedor de la nube abstrae la infraestructura subyacente, lo que hace que sea más difícil bloquear la actividad de rangos de IP o usuarios específicos.

Los desarrolladores pueden instalar WAF en cualquier aplicación para Web, con el fin de detectar amenazas como ataques de inyección de SQL y realizar otras revisiones de vulnerabilidades comunes. Por ejemplo, si alguien trata de acceder una URL, como /phpmyadmin o /wp-admin, en un sitio personalizado –uno que no sea WordPress– seguramente se trata de un bot tratando de acceder a su software. Los programas de ataque automatizados frecuentemente tienen en la mira este tipo de URLs porque contienen vulnerabilidades comunes que los equipos de operaciones no suelen parchar. Si usted ve este tipo de actividad no autorizada, es muy probable que deba bloquear un bot para que no realice ninguna actividad en su aplicación.

Cuando pueden bloquear automáticamente las direcciones IP incorrectas de una aplicación y recibir alertas sobre ellas, los equipos de operaciones pueden evitar rápidamente lo que podría haber sido un ataque de fuerza bruta. WAF viene con varias reglas pre-programadas, pero los equipos de operaciones también pueden crear reglas específicas para su negocio.

Este artículo se actualizó por última vez en julio 2018

Profundice más

Inicie la conversación

Envíenme notificaciones cuando otros miembros comenten sobre este artículo.

Por favor cree un Nombre de usuario para poder comentar.

- ANUNCIOS POR GOOGLE

Close