Featured image

Desarrollo Seguro de Aplicaciones Serverless

Aprende a diseñar, implementar y desplegar aplicaciones serverless en Amazon Web Services de manera segura.

La computación sin servidor - serverless computing - permite crear y ejecutar aplicaciones y servicios sin pensar en los servidores. De esta forma, se delegan en el proveedor de la nube las tareas de gestión de la infraestructura, el aprovisionamiento de servidores o clústeres, la aplicación de parches, el mantenimiento del sistema operativo y el aprovisionamiento de capacidad.

Este curso, dividido en 3 talleres totalmente prácticos, está diseñado para entender cómo se diseñan, implementan y despliegan las aplicaciones modernas serverless en AWS, en qué se diferencian con las aplicaciones desplegadas sobre servidores y cómo podemos detectar errores de seguridad y ayudar a protegerlas de los atacantes.

Para ello se desarrolla una aplicación web completa desde cero (con front-end y una API back-end) utilizando el framework SAM (Serverless Application Model) de AWS.  Posteriormente la seguridad de la aplicación se analiza desde el punto de vista de un atacante / pentester para por último aplicar de forma progresiva medidas de seguridad y buenas prácticas que corrijan los problemas encontrados

 

Programa

El curso, dividido en 3 partes, tiene como objetivo final la construcción y despliegue de una aplicación serverless compuesta por una aplicación front-end y una API backend con la siguiente arquitectura de servicios de AWS:

 

  • MÓDULO 1 - Desarrollo de una aplicación serverless en AWS con SAM

El objetivo de este módulo es aprender de forma práctica los conceptos y servicios fundamentales para el desarrollo de aplicaciones serverless en AWS mediante la implementación de un ejemplo completo de aplicación serverless (front-end + back-end).

En este workshop desarrollamos en primer lugar una API back-end serverless en AWS desde cero utilizando Infraestructura como Código (IaaS) proporcionado por el framework SAM.

En segundo lugar, conectaremos con la API una aplicación front-end y veremos cómo desplegarla en AWS.

 

  • MÓDULO 2 - Pentest de la aplicación serverless

En este módulo nos ponemos en el papel de un pentester para analizar qué problemas de seguridad pueden encontrarse en una aplicación serverless como la desarrollada en el módulo 1.

El módulo comienza realizando algunos ejercicios de pentesting sobre servicios desplegados en la nube mediante ejemplos de escenarios y errores de seguridad comunes.

Finalmente se realiza un pentest de la aplicación de ejemplo.

 

  • MÓDULO 3 - Securizando la aplicación y aplicando buenas prácticas

En este módulo se aprenden algunas técnicas fundamentales para proteger una aplicación serverless creada con AWS.

Cubriremos los servicios y características de AWS que se pueden usar para mejorar la seguridad de las aplicaciones en diferentes dominios de seguridad como: IAM (Identity and Access Management), protección de datos, buenas prácticas de código, monitorización y protección de la infraestructura.

 

Nori zuzendua

Desarrolladores de software, Ingenieros Devops y SRE, Responsables de Seguridad y de Sistemas, Pentesters e Ingenieros de seguridad.


Requerimientos

  • Conocimientos básicos de git
  • Conocimientos básicos de javascript
  • Conocimientos básicos de qué es una API, una aplicación web front-end y del protocolo http

 

Ayuda a seguir el curso con mayor fluidez

  • Experiencia desarrollando aplicaciones web / APIs
  • Conocimientos básicos de pentesting web
  • Familiaridad con línea de comandos
  • Conocimientos de entornos cloud

 

Materias

  • Desarrollo y despliegue de una aplicación serverless en la nube AWS
  • Automatización e Infraestructura como código (IaC)
  • Seguridad de aplicaciones Web (OWASP)
  • Modelo de responsabilidad compartida en Cloud
  • Pentesting de cloud y aplicaciones Web / API
  • Logging y monitorización
  • Cifrado y almacenamiento de secretos
  • Autenticación y autorización en la API
  • Filtrado y validación de entradas