¿Cuántas veces has visto un incidente de seguridad donde la causa raíz fue "no sabíamos que ese recurso existía" o "no teníamos visibilidad de ese cambio"? En AWS, donde los recursos se crean y destruyen en segundos, la visibilidad no es opcional: es la base de toda estrategia de seguridad.
Este post explora por qué conocer tu entorno AWS es el primer y más crítico paso en ciberseguridad, cómo lograrlo de forma efectiva incluso con recursos limitados, y qué herramientas específicas de AWS puedes usar hoy para tener el control necesario.
¿Por qué la visibilidad es lo primero en seguridad?
Imagina intentar proteger una casa sin saber cuántas puertas y ventanas tiene, o si alguien dejó una ventana abierta en el segundo piso. Así es intentar asegurar tu entorno AWS sin visibilidad adecuada.
Los principios básicos de seguridad nos dicen que:
- No puedes proteger lo que no conoces: Si no sabes que existe un bucket S3 público, no puedes asegurarte de que no esté expuesto.
- No puedes detectar lo que no monitorizas: Un cambio de política IAM peligroso pasará desapercibido si no lo estás auditando.
- No puedes responder lo que no ves: Sin logs de acceso, investigar una posible brecha es como trabajar con los ojos vendados.
En la nube, donde la velocidad de cambio es extraordinaria, estos principios se vuelven aún más críticos. Un entorno AWS puede cambiar drásticamente entre el desayuno y la cena.
El problema de la visibilidad en entornos AWS dinámicos
AWS nos brinda agilidad increíble, pero esa misma agilidad crea desafíos de visibilidad:
- Efímeros: Instancias EC2 que viven minutos, funciones Lambda que se ejecutan por eventos.
- Distribuidos: Recursos en múltiples regiones, cuentas y servicios.
- Automatizados: Infraestructura como código que crea recursos sin intervención humana directa.
- Complejos: Dependencias entre servicios que no son inmediatamente obvias.
Los métodos tradicionales de inventario manual o escaneos periódicos simplemente no funcionan aquí. Necesitamos visibilidad continua, automatizada y contextual.
Los cuatro pilares de la visibilidad en AWS
Para tener un conocimiento completo de tu entorno AWS, necesitas cubrir estas cuatro áreas:
1. Inventario de recursos (¿Qué tengo?)
El punto de partida es saber exactamente qué recursos existen en tu cuenta, en qué región, y cómo están configurados.
AWS Config es tu mejor amigo aquí. Te proporciona:
- Inventario continuo de recursos soportados
- Historial de configuración (qué cambió y cuándo)
- Relaciones entre recursos (qué está conectado a qué)
- Evaluación contra reglas de compliance
Ejemplo de regla básica de AWS Config para detectar buckets S3 públicos:
# AWS Config Rule: s3-bucket-public-read-prohibited
# Detecta buckets S3 con acceso de lectura público
Type: AWS::Config::ConfigRule
Properties:
ConfigRuleName: s3-bucket-public-read-prohibited
Description: >-
Checks that your S3 buckets do not allow public read access.
Scope:
ComplianceResourceTypes:
- AWS::S3::Bucket
Source:
Owner: AWS
SourceIdentifier: S3_BUCKET_PUBLIC_READ_PROHIBITED
Para equipos con recursos limitados, empieza con las reglas administradas de AWS Config que cubren los casos de uso más comunes de seguridad.
2. Monitoreo de cambios (¿Qué cambió y cuándo?)
Saber qué tienes no es suficiente si no sabes cuándo y cómo cambia. Aquí entra AWS CloudTrail.
CloudTrail te proporciona:
- Registro de todas las llamadas a la API de AWS
- Quién hizo qué, desde dónde y cuándo
- Datos esenciales para investigación de incidentes
- Base para detección de anomalías y amenazas
Configuración mínima recomendada:
# CloudTrail básico con registro de eventos de gestión
Type: AWS::CloudTrail::Trail
Properties:
Name: security-trail
IsLogging: true
IncludeGlobalServiceEvents: true
IsMultiRegionTrail: true
EnableLogFileValidation: true
S3BucketName: your-security-logs-bucket
# Opcional pero recomendado: enviar logs a CloudWatch Logs para métricas y alarmas
CloudWatchLogsLogGroupArn: !GetAtt CloudTrailLogGroup.Arn
CloudWatchLogsRoleArn: !GetAtt CloudTrailRole.Arn
Tip para LATAM: Si el costo de almacenamiento de logs es una preocupación, usa políticas de ciclo de vida en S3 para mover logs antiguos a Glacier o eliminarlos después de un período de retención (ej. 90 días para operación, 1 año para compliance).
3. Evaluación de seguridad continua (¿Estoy protegido según mis políticas?)
Tener inventario y logs es valioso, pero necesitas saber si tu configuración actual cumple con tus estándares de seguridad. Aquí es donde AWS Security Hub brilla.
Security Hub te proporciona:
- Visibilidad centralizada de hallazgos de seguridad de múltiples servicios
- Integración con AWS Config, GuardDuty, Inspector, Macie y partners
- Estándares de seguridad predefinidos (CIS AWS Foundations, PCI DSS, etc.)
- Acciones automatizadas y flujos de trabajo de remediación
Activar Security Hub es sencillo pero poderoso:
# AWS CLI - Activar Security Hub con estándares fundamentales
aws securityhub enable-security-hub --enable-default-standards
# Habilitar específicamente el estándar CIS AWS Foundations
aws securityhub enable-standards --standards-arn arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0
Para equipos pequeños, empezar con el estándar CIS AWS Foundations te da una excelente base de verificaciones de seguridad esenciales sin sobrecargar.
4. Detección de amenazas (¿Hay algo malo aconteciendo ahora?)
La visibilidad preventiva es crucial, pero también necesitas saber cuando algo malicioso está ocurriendo. Amazon GuardDuty es tu servicio de detección de amenazas gestionado.
GuardDuty analiza:
- Logs de CloudTrail para actividad de API inusual
- Logs de VPC Flow para tráfico de red anómalo
- Logs de DNS para consultas a dominios maliciosos
- Y más, usando inteligencia de amenazas y machine learning
Activación con un solo comando:
# Activar GuardDuty en la región actual
aws guardduty create-detector --enable
# Para múltiples regiones, usa un script o CloudFormation/CDK
Hallazgos típicos de GuardDuty que debes investigar inmediatamente:
- Credenciales comprometidas (ej. llamadas desde ubicaciones inusuales)
- Instancias EC2 comunicándose con conocidos dominios de comando y control
- Actividad de reconocimiento de red (puertos escaneados)
- Exfiltración de datos mediante tráfico DNS inusual
Nota para LATAM: GuardDuty tiene un costo por evento analizado, pero las primeras 30 días son gratuitos para evaluación. En entornos con bajo tráfico, el costo mensual puede ser muy manejable (menos de $10 en muchas cuentas de desarrollo/testing).
Implementación práctica: Tu primera pila de visibilidad
No necesitas implementar todo de una vez. Aquí tienes un enfoque por fases que puedes adaptar a tus recursos:
Fase 1: Lo esencial (Día 1)
- ✅ Activa CloudTrail en todas las regiones (mínimo: registro de eventos de gestión)
- ✅ Habilita AWS Config con reglas básicas (S3 público, IAM sin MFA, puertos abiertos)
- ✅ Activa Security Hub con el estándar CIS AWS Foundations
- ✅ Activa GuardDuty en regiones donde tengas recursos
Esto te da una base sólida de visibilidad con mínima configuración y costo predecible.
Fase 2: Contexto y acción (Semana 1)
- ✅ Configura agregación de AWS Config y Security Hub entre cuentas (si tienes organización)
- ✅ Crea tus primeras reglas custom de AWS Config para tus requisitos específicos
- ✅ Configura destinatarios para hallazgos de Security Hub (email, SNS, ticketing)
- ✅ Revisa y ajusta los filtros de GuardDuty para reducir falsos positivos
Fase 3: Integración y automatización (Mes 1+)
- ✅ Envía logs de CloudTrail a un SIEM o solución de análisis de logs (opcional)
- ✅ Crea lambdas de remediación automática para hallazgos comunes (ej. eliminar reglas de security group demasiado permisivas)
- ✅ Implementa dashboards personalizados en CloudWatch o QuickSight
- ✅ Conecta con tu flujo de trabajo de gestión de cambios o tickets
Consideraciones específicas para equipos LATAM con recursos limitados
Entiendo que no todos tenemos presupuestos de seguridad de Fortune 500. Aquí algunas estrategias para maximizar el valor con inversión mínima:
1. Prioriza basado en riesgo
No trates de monitorizar todo por igual. Enfócate primero en:
- Recursos expuestos a Internet (load balancers, instancias con IP pública, buckets S3)
- Credenciales y acceso privilegiado (usuarios IAM con políticas de administrador, roles de cross-account)
- Datos sensibles (buckets con PII, bases de datos, volúmenes EFS)
- Cambios en configuraciones de seguridad (security groups, NACLs, políticas IAM)
2. Usa lo que ya tienes (y es gratuito)
AWS ofrece varios servicios de visibilidad sin costo adicional:
- AWS Trusted Advisor (versión básica): Chequeos de seguridad y performance gratuitos
- AWS Personal Health Dashboard: Eventos que podrían afectar tus recursos
- Facturación y Cost Explorer: Detecta gastos inusuales que podrían indicar actividad maliciosa (ej. instancias EC2 corriendo 24/7 inesperadamente)
- Logs de VPC Flow: Habilítalos en VPCs críticas - son económicos y muy informativos
3. Aprovecha la comunidad y lo abierto
No necesitas construir todo desde cero:
- Usa las rules administradas de AWS Config en lugar de crear las tuyas desde cero
- Aprovecha los estándares y controles de Security Hub predefinidos
- Explora el AWS Security Best Practices de Amazon para guías y plantillas
- Participa en los foros de la comunidad AWS donde puedes obtener ayuda gratuita
Conclusión: La visibilidad es tu cimiento, no tu techo
Volviendo al principio: no podemos cuidar lo que no conocemos. En AWS, donde la agilidad es tanto una ventaja como un desafío, la visibilidad continua no es un módulo de seguridad más: es la fundación sobre la cual construyes todo lo demás.
Antes de invertir en herramientas avanzadas de detección y respuesta, antes de crear complejas políticas IAM, antes de diseñar tu arquitectura de confianza cero: asegúrate de que sabes qué tienes, cómo cambia, y si está configurado de forma segura.
La buena noticia es que AWS nos brinda las herramientas necesarias para lograr esta visibilidad de forma nativa, escalable y, con la planificación adecuada, accesible incluso para equipos con recursos limitados. No se trata de tener el presupuesto más grande, sino de usar sabiamente lo que está disponible.
Tu primer paso hoy podría ser tan simple como activar CloudTrail y AWS Config con unas pocas reglas críticas. Desde ahí, construye progresivamente. Cada mejora en visibilidad te da más conocimiento, y cada incremento de conocimiento te da más capacidad para proteger efectivamente lo que más importa.
Recuerda: En seguridad, lo que no sabe puede herirte. Lo que sí sabes, puedes defenderlo.