Biblioteca / Seguridad
Framework de Seguridad Cloud Enterprise v3.1
Controles, politicas y configuraciones para AWS, GCP y Azure. ISO 27001:2022, SOC 2 Type II y NIST CSF 2.0.
Tabla de contenido
Capitulo 1
Introduccion y alcance del framework
Establece los controles minimos de seguridad para entornos cloud en produccion, compatible con ISO 27001:2022, SOC 2 Type II y NIST CSF 2.0.
Proposito y audiencia
Dirigido a equipos DevSecOps, arquitectos cloud y responsables de cumplimiento que necesitan una guia practica. Cada control incluye racional de negocio y pasos de implementacion.
Se asume conocimiento basico de AWS, GCP o Azure. Los controles son equivalentes entre proveedores salvo indicacion explicita.
Alcance
Cubre: cuentas cloud de produccion y staging, cargas de trabajo en contenedores e instancias, bases de datos gestionadas y configuracion de red.
ISO 27001:2022 Anexo A - SOC 2 CC6-CC9 - NIST CSF 2.0: Identify, Protect, Detect, Respond, Recover
Como usar este documento
- Evalua el nivel actual con el checklist del Anexo A.
- Prioriza controles segun la matriz de riesgo del Capitulo 2.
- Implementa por capitulo siguiendo el orden propuesto.
- Documenta evidencias para cada control implementado.
- Revisa el framework cada 12 meses o ante cambios arquitecturales.
Capitulo 2
Modelo de amenazas en entornos cloud
Las amenazas en cloud difieren sustancialmente de las on-premise. Entender el panorama especifico es el primer paso antes de implementar controles.
OWASP Cloud Top 10
| # | Amenaza | Impacto | Frecuencia |
|---|---|---|---|
| C1 | Configuracion incorrecta de IAM | Critico | Muy alta |
| C2 | Acceso no autorizado a S3/GCS/Blob | Critico | Alta |
| C3 | Credenciales expuestas en repositorios | Critico | Alta |
| C4 | Imagenes de contenedor vulnerables | Alto | Alta |
| C5 | APIs publicas sin autenticacion | Alto | Media |
| C6 | Logging insuficiente para deteccion | Alto | Media |
| C7 | Falta de cifrado en datos sensibles | Alto | Media |
| C8 | Permisos excesivos en service accounts | Medio | Alta |
| C9 | Ausencia de MFA en cuentas privilegiadas | Critico | Alta |
| C10 | Dependencias de terceros sin verificar | Medio | Media |
El 83% de los incidentes cloud en 2024 tuvieron como causa raiz una configuracion incorrecta de IAM o credenciales expuestas.
Metodologia STRIDE en cloud
STRIDE aplicado a arquitecturas cloud:
- Spoofing: suplantacion via credenciales robadas o SSRF
- Tampering: modificacion no autorizada de datos en storage
- Repudiation: falta de logs que impide atribuir acciones
- Information Disclosure: buckets S3 publicos, snapshots sin cifrar
- Denial of Service: agotamiento de cuotas y ataques volumetricos
- Elevation of Privilege: roles IAM sobredimensionados
Capitulo 3
Controles de identidad y acceso (IAM)
IAM es la capa de control mas critica. Un modelo de identidad mal disenado invalida todos los demas controles de seguridad.
Principio de minimo privilegio
Cada usuario, servicio y aplicacion debe tener unicamente los permisos estrictamente necesarios:
- Crear roles especificos por funcion, nunca usar AdministratorAccess en cuentas de servicio
- Revisar permisos cada 90 dias con AWS IAM Access Analyzer
- Eliminar usuarios y roles inactivos por mas de 60 dias
- Nunca compartir credenciales entre servicios o entornos
MFA obligatorio
aws iam create-policy \
--policy-name RequireMFA \
--policy-document '{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:EnableMFADevice",
"sts:GetSessionToken"
],
"Resource": "*",
"Condition": {
"BoolIfExists": {
"aws:MultiFactorAuthPresent": "false"
}
}
}]
}'Rotacion de credenciales
Las Access Keys no deben vivir mas de 90 dias:
aws cloudwatch put-metric-alarm \ --alarm-name AccessKeyAge90 \ --metric-name DaysSinceLastRotation \ --namespace AWS/IAM --statistic Maximum \ --period 86400 --threshold 90 \ --comparison-operator GreaterThanThreshold \ --alarm-actions arn:aws:sns:us-east-1:ACCOUNT:security-alerts
Usa Instance Profiles en EC2 y Workload Identity en GCP en lugar de Access Keys embebidas. Las credenciales temporales son siempre mas seguras.
Capitulo 4
Seguridad de red y perimetro cloud
La red en cloud no es un perimetro fijo. Requiere un modelo basado en identidad y microsegmentacion.
VPC segura — tres capas
| Capa | Subnet | Internet | Recursos tipicos |
|---|---|---|---|
| Publica | 10.0.1.0/24 | Si (IGW) | Load Balancer, NAT Gateway |
| Privada | 10.0.10.0/24 | No (NAT egress) | Instancias de aplicacion |
| Datos | 10.0.20.0/24 | No | RDS, ElastiCache |
Nunca pongas bases de datos en subnets publicas. Nunca abras puerto 22 desde 0.0.0.0/0. Usa Systems Manager Session Manager.
Security Groups por capa
resource "aws_security_group" "alb" {
ingress { from_port=443; to_port=443; protocol="tcp"; cidr_blocks=["0.0.0.0/0"] }
egress { from_port=8080; to_port=8080; protocol="tcp"
security_groups=[aws_security_group.app.id] }
}
resource "aws_security_group" "app" {
ingress { from_port=8080; to_port=8080; protocol="tcp"
security_groups=[aws_security_group.alb.id] }
egress { from_port=5432; to_port=5432; protocol="tcp"
security_groups=[aws_security_group.db.id] }
}Capitulo 5
Cifrado en reposo y en transito
Todos los datos sensibles deben estar cifrados, tanto cuando se almacenan como cuando se transmiten.
Estandares minimos
| Contexto | Algoritmo | Servicio AWS | Servicio GCP |
|---|---|---|---|
| Storage en reposo | AES-256 | S3 SSE-KMS | Cloud Storage CMEK |
| Bases de datos | AES-256 | RDS Encryption | Cloud SQL CMEK |
| Datos en transito | TLS 1.2+ | ALB / CloudFront | Cloud Load Balancing |
| Gestion de claves | AES-256 | AWS KMS | Cloud KMS |
KMS con rotacion automatica
resource "aws_kms_key" "app_data" {
description = "CMK para datos de produccion"
deletion_window_in_days = 30
enable_key_rotation = true
}
resource "aws_kms_alias" "app_data" {
name = "alias/app-data-prod"
target_key_id = aws_kms_key.app_data.key_id
}Capitulo 6
Gestion de vulnerabilidades y parches
Un programa estructurado de gestion de vulnerabilidades reduce drasticamente la superficie de ataque.
SLA internos por criticidad
| CVSS | Criticidad | Remediacion maxima | Accion |
|---|---|---|---|
| 9.0-10.0 | Critico | 24 horas | Escalar a P1 inmediatamente |
| 7.0-8.9 | Alto | 7 dias | Notificar equipo de seguridad |
| 4.0-6.9 | Medio | 30 dias | Planificar en proximo sprint |
| 0.1-3.9 | Bajo | 90 dias | Registrar y revisar |
Escaneo de imagenes en CI/CD
- name: Scan Docker image
uses: aquasecurity/trivy-action@master
with:
image-ref: ${{ env.IMAGE }}:${{ env.TAG }}
format: sarif
output: trivy-results.sarif
severity: CRITICAL,HIGH
exit-code: '1'Capitulo 7
Monitoreo, logging y deteccion de amenazas
Un entorno sin logging completo es un entorno ciego. La deteccion de amenazas depende de la calidad de los logs.
Arquitectura de logging
- CloudTrail multi-region a S3 centralizado con Object Lock inmutable
- VPC Flow Logs a CloudWatch Logs (retencion 90 dias minimo)
- Application logs a CloudWatch Logs con exportacion a S3
- RDS logs con exportacion a CloudWatch
Alertas criticas
| Evento | Servicio | Severidad | Accion |
|---|---|---|---|
| Root account login | CloudTrail | CRITICA | Alertar CISO inmediatamente |
| Login sin MFA | CloudTrail | ALTA | Deshabilitar sesion y notificar |
| Cambio de politica IAM | CloudTrail | ALTA | Revisar y aprobar o revertir |
| S3 bucket hecho publico | Config | CRITICA | Revertir y analizar causa raiz |
| SG con 0.0.0.0/0 abierto | AWS Config | ALTA | Remediar automaticamente |
AWS Security Hub con el estandar CIS AWS Foundations Benchmark activo entrega mas de 100 controles de deteccion en menos de 15 minutos de configuracion.
Capitulo 8
Procedimiento de respuesta ante incidentes
La calidad de la respuesta determina el impacto final. Un procedimiento documentado reduce el tiempo de resolucion hasta un 60%.
Clasificacion P1-P4
| Prioridad | Criterio | Respuesta inicial | Ejemplo |
|---|---|---|---|
| P1 | Datos expuestos o produccion caida | 15 min | S3 con datos de clientes publico |
| P2 | Servicio degradado o posible brecha | 1 hora | Login sospechoso en cuenta privilegiada |
| P3 | Anomalia detectada sin impacto | 4 horas | Pico inusual de API calls nocturnos |
| P4 | Alerta informativa | 24 horas | Certificado a 30 dias de expirar |
Runbook de incidente P1
- Confirmar el incidente (max 5 min)
- Activar canal de war room en Slack / Teams
- Notificar al responsable de seguridad y CTO
- Contener: revocar credenciales, aislar recurso afectado
- Preservar evidencias: no eliminar logs, tomar snapshots
- Erradicar causa raiz con acciones documentadas
- Restaurar desde backup limpio verificado
- Iniciar post-mortem dentro de las 48h siguientes
Capitulo 9
Cumplimiento, trazabilidad y evidencias
El cumplimiento es un proceso continuo. Las evidencias documentadas son lo que hace auditable a una organizacion.
Mapa de controles cruzados
| Control | ISO 27001 | SOC 2 | NIST CSF |
|---|---|---|---|
| MFA en cuentas privilegiadas | A.5.17 | CC6.1 | PR.AC-7 |
| Cifrado AES-256 en reposo | A.8.24 | CC6.1 | PR.DS-1 |
| Logging centralizado inmutable | A.8.15 | CC7.2 | DE.AE-3 |
| Gestion de vulnerabilidades | A.8.8 | CC7.1 | ID.RA-1 |
| Revision periodica IAM | A.5.18 | CC6.3 | PR.AC-1 |
| Respuesta ante incidentes documentada | A.5.26 | CC7.3 | RS.RP-1 |
Calendario de revision
- Mensual: revision de alertas y metricas de seguridad
- Trimestral: revision de accesos IAM y permisos inactivos
- Semestral: prueba de penetracion y revision de politicas
- Anual: auditoria completa del framework
Este framework es un punto de partida. La seguridad es un proceso continuo. Cada incidente es una oportunidad de reforzar los controles.