Está en la página 1de 110

AMAZON WEB

SERVICES (AWS) EN ENS

Día 1
• Índice
1. Introducción al curso
2. Introducción a AWS
3. Modelo de responsabilidad compartida
4. Guías de configuración segura en AWS
5. Seguridad en la nube de AWS
6. AWS IAM
7. Amazon EC2

Introducción al curso
• Introducción al curso
Día 1 Día 2 Día 3 Día 4

Monitorización de los
Introducción ENS Amazon VPC Prowler
recursos en AWS
Explotación - Inventario y Resumen y cierre de
Introducción al curso Contenedores en AWS protección de claves KMS y la formación
ENS

Controles de seguridad en
Introducción a AWS Serverless y AWS Lambda AWS
Modelo de responsabilidad Detección de amenazas y
Almacenamiento en AWS vulnerabilidades
compartida
Guías de configuración Protección de la información
Bases de datos en AWS
segura en AWS
Seguridad en la nube de Protección de los servicios
Cifrado en AWS
AWS

AWS IAM

Amazon EC2
• Objetivos

- Entender AWS y sus diferentes servicios


- Abordar las diferentes medidas del ENS en un entorno AWS
- Controlar el acceso a los servicios y aplicaciones de forma segura
- Aprender a monitorizar y hacer un seguimiento de la seguridad
del entorno
- Desplegar un entorno completo y seguro en la nube
• Q&A
• Requisitos previos

Conocimientos Conocimientos
técnicos básicos cloud

Cuenta en
AWS

Introducción a AWS
• Introducción a AWS

La “nube” Pago por


de Amazon uso

Inmensa
arquitectura
• Categorías AWS
• Beneficios de AWS
Los seis beneficios de la computación en la nube:

1. Pagar solo lo que se utiliza.


2. Economía escalable.
3. Eliminar sobrecostes.
4. Velocidad y escalabilidad.
5. Ahorro en infraestructura.
6. Ser global.
• Infraestructura global de AWS
• Beneficios de la Infraestructura de AWS

Seguridad Disponibilidad Rendimiento

Presencia
Escalabilidad
global
• Regiones

He aquí algunos ejemplos de códigos de Región:

• us-east-1: Esta es la primera Región creada en el este de los Estados


Unidos. El nombre geográfico de esta Región es N. Virginia.

• ap-northeast-1: Es la primera región creada en el noreste de Asia-


Pacífico. El nombre geográfico de esta región es Tokio.
• Elegir la región de AWS adecuada

Para elegir la región adecuada hay que tener en cuenta cuatro aspectos principales:

1. Latencia.
2. Precio.
3. Disponibilidad del servicio.
4. Conformidad con los datos.

Para consultar la disponibilidad del servicio por región AWS pone a disposición la siguiente URL:
https://aws.amazon.com/es/about-aws/global-infrastructure/regional-product-services/
• Zonas de disponibilidad

Tienen nombres en clave:

• us-east-1a: una ZD en us-east-1 (Región de Virginia del


Norte)

• sa-east-1b: una ZD en sa-east-1 (Región de São Paulo en


América del Sur)
• Relación zona
disponibilidad y región

Zonas Centro de
Regiones Clústeres de Disponib.
Clústeres de datos
• Alcance de los servicios de AWS
• Cada servicio se implementa en una ZD, Región o global.
• AWS aumenta la durabilidad y disponibilidad automáticamente en servicios regionales
• Si indicamos ZD, nosotros somos responsables de la durabilidad y la disponibilidad

AWS se encarga de la durabilidad y escalabilidad


No
AWS nos permite especificar una ZD

Tú te encargas de la durabilidad y escalabilidad
• Capacidad de recuperación
• Interacción con AWS
Cada acción que se realiza en AWS es una llamada a la API que está autenticada y autorizada.
• La consola de administración de AWS
• La consola de administración de AWS
• La consola de administración de AWS
• La interfaz de línea de comandos (CLI) de AWS
Este es un ejemplo de ejecución de una llamada a la API contra un servicio utilizando la CLI de AWS:
aws ec2 describe-instances

Se obtiene esta respuesta:

{
"Reservations": []
}
• Kits de desarrollo de software (SDK) de AWS
Este es un ejemplo de código que puedes implementar para trabajar con los recursos de AWS
utilizando el AWS SDK de Python.

import boto3

client = boto3.client('ec2')

print(client.describe_account_attributes())
print(client.describe_instances())
• SDK VS CLI

CLI SDK Python


aws ec2 describe-instances client = boto3.client('ec2')
print(client.describe_instances())

Modelo de Responsabilidad Compartida


• Modelo de Responsabilidad Compartida
1 Servicios de Infraestructura
2 Servicios de contenedores 3 Servicios Abstractos

Customer Data Customer Data Customer Data


¿Que
podemos Client Side Data Encryption & Data Integrity Authentication

ofrecer Platform & Application Management Client Side Data Encryption & Network Traffic Protection

“La forma en la
Data Integrity Authentication Encryption / Integrity / Identity Optional –

Customer IAM
adicionalment Opaque Data:

Customer IAM
Server Side Encryption Provided By The Platform

Firewall Configuration
0s and 1s (In
Protection of Data at Rest

que uno adapta


Transit and At
e a nuestros Optional – Opaque Data: 0s and 1s (In Transit and At Rest) Rest)

Operating System, Network & Firewall Configuration Network Traffic Protection Provided By The Platform

su Seguridad y clientes para Protection of Data in Transit

ayudarles a

AWS IAM
cumplimiento cumplir con el Client Side Data Server Side
Encryption
Network Traffic
Protection
Platform & Application Management
Platform & Application Management
Encryption & Data

de los controles ENS? Integrity


Authentication
File System and / or
Data
Encryption /
Integrity / Identity

va a depender Optional – Opaque Data: 0s and 1s (In Transit and At Rest)


Operating System & Network Configuration
Operating System & Network Configuration

del modelo de
responsabilidad Foundation
Services
Compute Storage
Database
s
Networking Foundation
Services
Compute Storage
Database
s
Networking Foundation
Services
Compute Storage
Database
s
Networking
AWS Endpoints

AWS IAM

AWS IAM
AWS Endpoints

AWS Endpoints
compartida” Nivel Alto
AWS Global Regions
Availability Edge AWS Global Availability Edge AWS Global Edge
Zones Locations Regions Regions
Availability
Infrastructure
Zones Locations
Infrastructure Infrastructure
Zones
Locations

Clientes AWS Terceros

Mayor responsabilidad y Mayor la delegación


personalización de seguridad en AWS con las
en el cliente mejores practicas de
seguridad integradas
• Modelo de Responsabilidad Compartida
EC2 es IaaS, por lo que realizamos todas las tareas de administración y configuración de seguridad
necesarias.
• ¿De qué es responsable AWS?
• Proteger y asegurar las regiones de AWS

• Administrar el hardware, el software y los componentes de red


• ¿De qué es responsable AWS?
Categoría Ejemplos de Servicios de AWS Responsabilidad de AWS
Servicios de Servicios de computación, como AWS administra la
Infraestructura Amazon Elastic Compute Cloud infraestructura subyacente y
(Amazon EC2) los servicios básicos.

Servicio de Servicios que requieren menos AWS administra la


almacenamiento gestión por parte del cliente, como infraestructura subyacente y
Amazon Relational Database Service los servicios básicos, el
(Amazon RDS) sistema operativo y la
plataforma de aplicaciones.

Servicios abstractos Servicios que requieren muy poca AWS opera la capa de
gestión por parte del cliente, como infraestructura, el sistema
Amazon Simple Storage Service operativo y las plataformas,
(Amazon S3) así como el cifrado y la
protección de datos del lado
del servidor.
• ¿De qué es responsable el cliente?
• Responsable de la configuración segura de sus servicios.

• Elegir una región para los recursos de AWS de acuerdo con las normas de soberanía de datos.

• Implementar mecanismos de protección de datos, como el cifrado y la gestión de copias de


seguridad.

• Utilizar el control de acceso para limitar quién tiene acceso a sus datos y recursos de AWS.
• ¿De qué es responsable el cliente?
Categoría Responsabilidad de AWS Responsabilidad del Cliente
Servicios de AWS gestiona la infraestructura y los Controla el sistema operativo y la
Infraestructura servicios básicos. plataforma de aplicaciones, así
como el cifrado, la protección y la
gestión de los datos de los clientes.
Servicio de AWS gestiona la infraestructura y los Es responsable de los datos de los
almacenamiento servicios básicos, el sistema clientes, de cifrarlos y de
operativo y la plataforma de protegerlos mediante cortafuegos
aplicaciones. de red y copias de seguridad.
Servicios AWS opera la capa de Es responsable de la gestión de los
abstractos infraestructura, el sistema operativo datos de los clientes y de su
y las plataformas, así como el protección mediante el cifrado del
cifrado y la protección de datos del lado del cliente.
lado del servidor.
• Todo se resume en:

Si lo puedes configurar, eres el responsable de su seguridad


• Puntos claves
• AWS distingue entre Regiones y zonas de disponibilidad, que no comparten datos entre sí.
• Para elegir una región, hay que tener en cuenta: Latencia, Precio, Disponibilidad del servicio y Normativas.
• Hay 4 formas de interactuar con AWS (interfaz web, línea de comandos, SDK y herramienta de terceros).
• Todas las acciones independientemente del origen, se hacen llamando a la API de Amazon.
• Depende del servicio, el cliente es responsable de diferentes ámbitos, por ejemplo, en una EC2, el responsable de
actualizar el software es el cliente.
• Los servicios están dentro de las zonas de seguridad y estas, a su vez, están dentro de las regiones.
• Descanso

Guías de configuración segura


• Guías de configuración segura en AWS
Actualmente se encuentran publicadas las siguientes guías del ENS:
- CCN-STIC-887 Perfil de cumplimiento específico para AWS Servicio de Cloud Corporativo
- CCN-STIC-887A Guía de configuración segura AWS.
- CCN-STIC-887B Guía rápida de Prowler.
- CCN-STIC-887C Guía de configuración segura de conectividad híbrida en AWS.
- CCN-STIC-887D Guía de configuración segura Multi-Cuenta AWS.
- CCN-STIC-887E Guía de configuración segura Amazon WorkSpaces.
- CCN-STIC-887F Guía de respuesta a incidentes de seguridad en AWS
- CCN-STIC-887G Guía de Configuración segura para monitorización y gestión AWS

Los controles del ENS se pueden encontrar en el siguiente enlace:


https://www.ccn-cert.cni.es/publico/ens/ens/index.html#!1071

Las guías están disponibles para descargar en el siguiente enlace:


https://www.ccn-cert.cni.es/guias/guias-series-ccn-stic/800-guia-esquema-nacional-de-seguri
dad.html
• Guía CCN-STIC-887

Base de Seguridad en
Trazabilidad
identidad capas

Protección Gestión de
Automatización
datos eventos
• Guía CCN-STIC-887
• Ayuda a cumplir con los requisitos del ENS con AWS
• Muchas recomendaciones se validan automáticamente
• Modelo de seguridad compartida
• Controles del ENS
• Marco Operacional
• Control de acceso
• Explotación
• Continuidad del servicio
• Monitorización del sistema
• Medidas de Protección
• Protección de las comunicaciones
• Protección de la información
• Protección de los servicios
• Controles del ENS
• Marco Operacional
• Control de acceso
• Explotación
• Continuidad del servicio
• Monitorización del sistema
• Medidas de Protección
• Protección de las comunicaciones
• Protección de la información
• Protección de los servicios
• ¿Qué es Prowler?
• Guía de configuración segura de
conectividad híbrida en AWS
El objetivo de la guía es documentar las recomendaciones de seguridad de la conectividad para
entornos híbridos que aprovechan los servicios de AWS como extensión de sus centros de datos físicos
• Guía de configuración segura de
conectividad híbrida en AWS
• Controles del ENS en la guía 887C
Marco Operacional
1. Control de acceso
a) Identificación
b) Requisitos de acceso
c) Autenticación túneles VPN
d) Segregación de funciones y tareas
2. Explotación
a) Generar un inventario de activos de VPN
b) Registro actividad usuarios
3. Continuidad del servicio
a) Obtención alta disponibilidad
4. Monitorización del sistema
a) Buenas prácticas
Medidas de Protección
1. Protección de las comunicaciones
a) Cómo proteger la confidencialidad
• Guía de configuración segura Multi-
Cuenta AWS

Dos opciones de gestión de AWS:


1. Todo en la misma cuenta
2. Una estructura multi-cuenta
• Beneficios multicuenta

1. Facturación diferenciada
2. Control costes
3. Definición de diferentes perímetros
• Controles del ENS en la guía 887D
Marco Operacional
1. Control de acceso
a) Identificación
b) Requisitos de acceso
c) Delegación de cuentas
d) Segregación de funciones y tareas
2. Explotación
a) Generar un inventario de activos en varias
cuentas
b) Registro actividad usuarios en diferentes
cuentas
3. Monitorización del sistema
a) Cómo detectar una intrusión en diferentes
cuentas
• Guía de configuración segura
Amazon WorkSpaces
1. Simplificación del escritorio
2. Seguridad de los datos
3. Administración y escalabilidad
• Controles del ENS en la guía 887E
Marco Operacional
1. Control de acceso
a) Identificación en workspaces
b) Requisitos de acceso con IAM
2. Explotación
a) Buenas prácticas etiquetado
b) Configuración de seguridad
c) Registro de actividad de usuarios
3. Continuidad del servicio
a) Arquitecturas para resistencia al fallo
4. Monitorización del sistema
a) Medición de métricas
Medidas de Protección
1. Protección de las comunicaciones
a) Cómo conectarse a workspaces
2. Protección de la información
a) Manejo de claves
• Guía de respuesta a incidentes de
seguridad en AWS
• AWS administra la seguridad de la nube.
• El usuario es responsable de la seguridad en la nube.
• Controles del ENS en la guía 887F
Marco Operacional
1. Monitorización del sistema
a) Detección de intrusión
b) Métricas
c) Respuesta basada en eventos
d) Post-Indicente
• Guía de configuración segura para
monitorización y gestión AWS 887G
• Controles del ENS en la guía 887G
Marco Operacional
1. Control de Acceso
2. Explotación
3. Monitorización del sistema
Medidas de protección
4. Protección de la información
• Descanso

Seguridad en la nube de AWS


• Seguridad en la nube de AWS
• Autenticación -> Garantiza que el usuario es quien dice ser (Identifica al usuario)
• Autorización -> Define las acciones permitidas del usuario
• ¿Qué es el usuario root(raíz) de AWS?
Tiene acceso completo a todos los servicios y recursos de AWS en la cuenta
• Comprender las credenciales de usuario
root de AWS
Dos conjuntos de credenciales asociados.
1. Dirección de correo electrónico y contraseña utilizadas para crear la cuenta.
2. Claves de acceso

Las claves de acceso constan de dos partes:


3. Un ID de clave de acceso
4. Una clave de acceso secreta
• Mejores prácticas con el usuario root de
AWS
Para garantizar la seguridad del usuario root:

 Elegir una contraseña fuerte para el usuario root.

 No compartir nunca la contraseña del usuario root ni las claves de acceso con nadie.

 Desactivar o eliminar las claves de acceso asociadas al usuario root.

 No utilizar el usuario root para realizar tareas administrativas o cotidianas.

 Activar el MFA en la cuenta root.


• Uso de la autenticación multifactor
• Uso de la autenticación multifactor
Principios del MFA:

 Algo que conoces (usuario, contraseña, pin…)


 Algo que tienes (Código de acceso)
 Algo que eres (Biometría)
• Dispositivos MFA admitidos
Dispositivo Descripción Dispositivos soportados
MFA Virtual Una aplicación de software que se ejecuta en un teléfono u Authy, Duo Mobile,
otro dispositivo y que proporciona un código de acceso de LastPass Authenticator,
un solo uso. Ten en cuenta que estas aplicaciones pueden Microsoft Authenticator,
ejecutarse en dispositivos móviles no seguros y, por ello, Google Authenticator
pueden no ofrecer el mismo nivel de seguridad que el
hardware o los dispositivos U2F.

Hardware Un dispositivo de hardware, generalmente un llavero o un Llavero, tarjeta de


dispositivo de tarjeta de visualización que genera un código visualización
numérico de seis dígitos de una sola vez

U2F Un dispositivo de hardware que se conecta a un puerto


USB del ordenador YubiKey
• Exigencias ENS
Guía 887A - op.acc.5.aws.iam.1
Guía 887A - op.acc.5.aws.iam.2
Guía 887A - op.exp.8.aws.trail.5
Guía 887D - op.acc.2.aws.iam.6

AWS IAM
• ¿Qué es el IAM?
• Características de IAM
Establece
Global Integrado políticas de
contraseñas

Federación
Soporte
de Gratuito
MFA
identidades
• ¿Qué es un usuario IAM?
• Credenciales de usuario IAM
Un usuario IAM consta de un nombre y un conjunto de credenciales. Al crear un usuario, se
puede optar por proporcionarle:

• Acceso a la consola de administración de AWS

• Acceso a la interfaz de línea de comandos de AWS (AWS CLI) y a la interfaz de programación


de aplicaciones de AWS (AWS API)
• ¿Qué es un grupo IAM?
Ejemplos:

• Un nuevo desarrollador se une a la cuenta de AWS para ayudar con la aplicación. Simplemente con
crear un nuevo usuario y añadirlo al grupo de desarrolladores sería suficiente, sin tener que pensar
qué permisos necesita.

• Un desarrollador cambia de trabajo y se convierte en un ingeniero de seguridad. En lugar de editar


los permisos del usuario directamente, se pueden eliminar del grupo anterior y añadirlos al nuevo
grupo que ya tiene el nivel de acceso correcto.
• ¿Qué es un grupo IAM?
Características:

• Los grupos pueden tener muchos usuarios.

• Los usuarios pueden pertenecer a muchos grupos.

• Los grupos no pueden pertenecer a otros grupos.


• ¿Qué es una política IAM?
• Ejemplos de políticas IAM
Política para proporcionar acceso administrador.
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":"*",
"Resource":"*"
}
]
}
• Estructura de una Política
Elemento Descripción Requerido Ejemplo

Especifica si la declaración tiene


Effect como resultado un permiso o una "Effect": "Deny"

denegación explícita

Describe las acciones específicas


Action "Action": "iam:CreateUser"
que se permitirán o denegarán ✔

"Resource":
Especifica el objeto u objetos que
Resource "arn:aws:iam::account-ID-without-
cubre la declaración ✔
hyphens:user/Bob"
• ¿Qué es un rol IAM?
• Buenas prácticas IAM
• Bloquear el usuario raíz de AWS

• Seguir el principio del mínimo privilegio

• Utilizar adecuadamente IAM

• Utilizar los roles de IAM cuando sea posible


• Proveedor de identidades
Amazon Single Sign On
• Exigencias ENS
Guía 887A - op.acc.1.aws.iam.1
Guía 887A - op.acc.1.aws.iam.2
Guía 887A - op.acc.1.aws.iam.3
Guía 887A - op.acc.1.aws.iam.4
Guía 887A - op.acc.1.aws.iam.5
Guía 887A - op.acc.1.aws.iam.7
Guía 887A - op.acc.3.aws.iam.1
Guía 887D - op.acc.2.aws.iam.5
• Descanso

Amazon EC2
• ¿Qué es Amazon EC2?
• ¿Qué es un AMI?
• ¿Cuál es la relación entre las AMI y las
instancias EC2?
• ¿Cuál es la relación entre las AMI y las
instancias EC2?
• Ciclo de vida de las instancias de Amazon
EC2
• Amazon Elastic Load Balancing (ELB)
• Características de ELB

Alta Escala
Equilibra carga
disponibilidad automáticamente
• Comprobaciones de estado
• Componentes ELB
• Amazon EC2 Auto Scaling
2 tipos:
• Activo-pasivo (Escalado vertical)
• Activo-activo (Escalado horizontal)
• Escalado vertical
• + potencia de cálculo
• Mantiene recursos
• Solo durante estado de parada

Recomendable 2 instancias iguales:


• 1 activa (recibe tráfico)
• 1 pasiva para escalado

Proceso ideal:
1. Detener instancia pasiva
2. Escalar o desescalar instancia pasiva
3. Iniciar instancia pasiva
4. Pasar a activa la instancia pasiva
5. Pasar a pasiva la instancia activa
6. Escalar o desescalar instancia pasiva
• Escalado vertical

Fase 1 Fase 2 Fase 3 Fase 4 Fase 5


• Máquina 1 • Máquina 1 • Máquina 1 • Máquina 1 • Máquina 1
activa activa pasiva escalada pasiva
• Máquina 2 • Máquina 2 • Máquina 2 • Máquina 2 • Máquina 2
pasiva escalada activa activa activa
• Escalado horizontal
• Integrar el ELB con el escalado automático
de EC2
• Escalado tradicional vs Escalado automático

Escalado tradicional
• Menor coste de arquitectura
• Mayor coste de operación en periodos valle

Escalado automático
• Mayor optimización en periodos pico y valle
• Mayor coste de arquitectura
• Configurar los componentes de auto escalado
de EC2

Grupo de
Plantilla de Política de
auto
lanzamiento escalado
escalado
• Plantilla de lanzamiento o configuración
Formas de creación de plantilla de lanzamiento manualmente (También se puede con EC2 Auto Scaling)
1. Utilizando una instancia EC2 existente (Todas las configuraciones ya están definidas).
2. A través de una plantilla existente.
3. Creando una plantilla desde cero.

Se permite el gestor de versiones, creando una nueva versión con mejoras en la plantilla de lanzamiento
• Grupo de auto escalado de EC2
• Grupo de auto escalado de EC2
• Garantizar la disponibilidad con EC2 Auto
Scaling
• Habilitar la automatización con políticas de
escalado
• Política de escalado simple
Se utiliza una alarma de CloudWatch y se especifica qué hacer cuando se activa
• Política de escalado por pasos
Las políticas de escalado por pasos responden a las alarmas adicionales incluso mientras
una actividad de escalado o de sustitución de la comprobación de estado está en curso.
• Política de escalado de seguimiento de
objetivos
Todo lo que se tiene que proporcionar es el valor objetivo a seguir y crea automáticamente
las alarmas de CloudWatch necesarias.
• Exigencias ENS
Guía 887A - op.acc.4.aws.sys.1
Guía 887A - op.exp.1.aws.sys.1
Guía 887A - op.exp.4.aws.sys.1
• Resumen
• El usuario raíz se debe proteger activando el MFA y eliminando las credenciales de acceso si no las utilizamos
• Las políticas IAM (JSON) solicitan un Efecto, Objeto, Sid opcional, una Acción y una Condición opcional
• El usuario root es administrador, pero el usuario administrador no es root
• No podemos restringir acciones del usuario root, de ahí la importancia de securizarlo
• El sistema MFA se basa en algo que conoces (usuario y contraseña) y algo que tienes (app de MFA)
y/o algo que eres (biometría)
• No solo los roles y grupos se gestionan mediante IAM, también el MFA
• Los usuarios federados realizan acciones en AWS con roles IAM, por lo que no necesitan estar autenticándose
• Prácticas recomendadas
Tutoriales prácticos AWS:
https://aws.amazon.com/es/getting-started/hands-on/

1. Introducción a la consola de administración de AWS:


https://aws.amazon.com/es/getting-started/hands-on/getting-started-with-a
ws-management-console/
• Q&A
Muchas
Gracias
E-mails Páginas web:
info@ccn-cert.cni.es www.ccn.cni.es
ccn@cni.es www.ccn-cert.cni.es oc.ccn.cni.es
sondas@ccn-cert.cni.es
redsara@ccn-cert.cni.es
organismo.certificacion@cni.es

También podría gustarte