CloudTrail (AWS)
Servicio de auditoría de Amazon Web Services que registra todas las llamadas API realizadas en una cuenta AWS. En forense cloud, CloudTrail es la fuente primaria de evidencia para investigar accesos no autorizados, fugas de datos y configuraciones maliciosas en infraestructura cloud.
CloudTrail (AWS)
El 94% de las empresas utilizan al menos un servicio cloud, y AWS domina con un 31% de cuota de mercado global según el informe Flexera State of the Cloud 2025. En 2024, el 45% de las brechas de datos involucraron infraestructura cloud, con un coste medio de 5,17 millones de dólares por incidente (IBM Cost of a Data Breach 2024). Cuando un perito informático forense investiga un incidente en AWS, CloudTrail es la primera y más crítica fuente de evidencia: registra quién hizo qué, cuándo, desde dónde y cómo en cada cuenta de Amazon Web Services. Sin CloudTrail, la investigación forense cloud es prácticamente imposible.
Definición técnica
AWS CloudTrail es un servicio nativo de Amazon Web Services que registra continuamente todas las llamadas API realizadas en una cuenta AWS, incluyendo acciones desde la consola web, CLI, SDKs y otros servicios de AWS.
Tipos de eventos:
- Management Events (eventos de gestión): operaciones de control como crear usuarios IAM, modificar políticas, lanzar instancias EC2, cambiar configuraciones de seguridad. Activados por defecto.
- Data Events (eventos de datos): operaciones sobre datos como GetObject/PutObject en S3, Invoke en Lambda. Requieren activación explícita y generan coste adicional.
- Insights Events: detección automática de actividad inusual (picos de llamadas API, patrones anómalos).
Arquitectura del registro:
Llamada API (usuario/servicio/rol)
→ CloudTrail captura evento (JSON)
→ Almacenamiento S3 bucket dedicado
→ Opcional: CloudWatch Logs (alertas tiempo real)
→ Opcional: EventBridge (automatización respuesta)Trail multi-región: un trail puede configurarse para capturar eventos de todas las regiones AWS simultáneamente. Esto es esencial en forense porque los atacantes frecuentemente operan en regiones que la organización no monitoriza activamente (por ejemplo, lanzar instancias de cryptomining en ap-southeast-1 cuando la empresa solo opera en eu-west-1).
Validación de integridad de logs: CloudTrail implementa un mecanismo de digest files (archivos resumen) que contienen hashes SHA-256 de cada archivo de log entregado en S3. Estos digest files están firmados digitalmente, creando una cadena de hash verificable que permite al perito demostrar que los logs no han sido manipulados tras su generación, un requisito fundamental para la cadena de custodia digital.
CloudTrail como evidencia forense: anatomía de un evento
Cada evento CloudTrail se registra en formato JSON con campos que responden a las preguntas fundamentales de toda investigación forense:
{
"eventVersion": "1.09",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDAEXAMPLE123",
"arn": "arn:aws:iam::123456789012:user/maria.garcia",
"accountId": "123456789012",
"userName": "maria.garcia"
},
"eventTime": "2026-01-15T14:32:17Z",
"eventSource": "s3.amazonaws.com",
"eventName": "GetObject",
"awsRegion": "eu-west-1",
"sourceIPAddress": "85.136.42.197",
"userAgent": "aws-cli/2.15.0 Python/3.11.6",
"requestParameters": {
"bucketName": "datos-clientes-confidencial",
"key": "exports/clientes-2025-full.csv"
},
"responseElements": null,
"requestID": "4E2B1C3D5F6A7890",
"eventID": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}Campos clave para el perito:
| Pregunta forense | Campo CloudTrail | Ejemplo |
|---|---|---|
| Quién | userIdentity | Usuario IAM, rol asumido, cuenta root |
| Qué | eventName | GetObject, CreateUser, StopLogging |
| Cuándo | eventTime | Timestamp UTC ISO 8601 |
| Dónde | sourceIPAddress + awsRegion | IP origen + región AWS |
| Cómo | userAgent | aws-cli, Console, SDK, Terraform |
| Sobre qué | requestParameters | Bucket, instancia, política afectada |
Nota para peritos: el campo sourceIPAddress puede mostrar la IP real del atacante, pero también puede ser una IP interna de AWS si la llamada proviene de otro servicio AWS. Es fundamental cruzar este dato con VPC Flow Logs para una atribución precisa.
Investigación forense con CloudTrail: metodología paso a paso
Verificar configuración del trail: confirmar que existía un trail activo durante el período investigado, que cubría todas las regiones, y que los data events estaban habilitados para servicios críticos (S3, Lambda, RDS).
Recopilar logs desde S3: descargar todos los archivos de log del bucket de CloudTrail correspondientes al período de interés. Los logs se almacenan comprimidos en formato
.json.gzorganizados por cuenta, región, año, mes y día.Validar integridad: ejecutar
aws cloudtrail validate-logspara verificar que los digest files confirman la integridad de cada archivo de log. Documentar esta validación como parte de la cadena de custodia.Parsear y filtrar eventos JSON: utilizar herramientas como Amazon Athena, jq, o scripts Python para filtrar eventos por rango temporal, usuario, servicio o tipo de evento.
Reconstruir la línea temporal del ataque: ordenar cronológicamente todos los eventos relevantes para establecer la secuencia de acciones del atacante, desde el acceso inicial hasta la exfiltración o daño.
Identificar compromiso IAM: analizar eventos de creación de credenciales (
CreateAccessKey,CreateLoginProfile), cambios de políticas (AttachUserPolicy,PutUserPolicy) y asunción de roles (AssumeRole) para determinar cómo el atacante obtuvo y escaló privilegios.Correlacionar con fuentes complementarias: cruzar hallazgos de CloudTrail con VPC Flow Logs, S3 Access Logs, GuardDuty findings y logs de aplicación para completar el panorama del incidente.
Ejemplo de consulta Athena para filtrar eventos sospechosos:
SELECT eventtime, useridentity.username, eventname,
sourceipaddress, requestparameters
FROM cloudtrail_logs
WHERE eventtime BETWEEN '2026-01-10' AND '2026-01-20'
AND useridentity.username = 'maria.garcia'
AND eventname IN ('GetObject', 'ListBuckets', 'CreateAccessKey')
ORDER BY eventtime ASC;Eventos críticos para peritos: señales de compromiso en CloudTrail
Los siguientes eventos API son los que un perito informático forense debe priorizar al analizar logs de CloudTrail:
Acceso y autenticación:
ConsoleLogin: inicio de sesión en consola AWS. Verificar IP origen, MFA utilizado, éxito/fallo.AssumeRole: asunción de rol IAM. Los atacantes frecuentemente asumen roles con más privilegios.
Escalada de privilegios:
CreateUser/CreateAccessKey: creación de nuevos usuarios o claves de acceso. Técnica habitual de persistencia.AttachUserPolicy/PutUserPolicy: asignación de políticas (permisos) a usuarios. Buscar asignación deAdministratorAccess.CreateLoginProfile: creación de contraseña para acceso a consola de un usuario que solo tenía acceso programático.
Exfiltración de datos:
GetObject(S3): descarga de objetos. Volúmenes anómalos (cientos de GetObject en minutos) indican exfiltración masiva.CopyObject/PutObject: copia de datos a otros buckets, potencialmente externos.
Destrucción y sabotaje:
DeleteBucket/DeleteObject: eliminación de datos.StopLogging/DeleteTrail: desactivación del propio CloudTrail. Esta es la señal de alarma más grave: un atacante intentando cubrir sus huellas.PutBucketPolicy: modificación de políticas de bucket para hacer datos públicos o accesibles externamente.
Cryptomining y abuso de recursos:
RunInstances: lanzamiento de instancias EC2. Buscar tipos de instancia GPU (p3, g4) en regiones inusuales.CreateFunction(Lambda): despliegue de funciones para cryptomining serverless.
Alerta roja: si encuentras un evento StopLogging o DeleteTrail durante tu investigación, documéntalo inmediatamente. Indica que el atacante intentó deshabilitar el registro de auditoría, lo que constituye evidencia de intención deliberada de ocultación y puede tener implicaciones penales agravantes.
Caso práctico: ex-empleado exfiltra datos confidenciales vía AWS
Nota: el siguiente caso está basado en una investigación forense real. Los datos identificativos (nombres, IPs, cuentas) han sido anonimizados para proteger la confidencialidad de los afectados, preservando únicamente los aspectos técnicos relevantes para fines educativos.
Contexto: una empresa tecnológica española detecta accesos anómalos a su infraestructura AWS tres días después del despido de un ingeniero DevOps. El departamento de IT observa transferencias masivas desde un bucket S3 que contiene datos de clientes.
Reconstrucción forense mediante CloudTrail:
Línea temporal del incidente:
Día 0 (viernes 17:00h) - Despido comunicado
→ RRHH comunica despido al empleado
→ IT NO revoca credenciales AWS inmediatamente (error crítico)
Día 1 (sábado 02:14h) - Acceso inicial
→ ConsoleLogin: éxito desde IP 83.47.xxx.xxx (domicilio empleado)
→ MFA: no configurado (segundo error crítico)
→ userAgent: "Mozilla/5.0... Chrome/120"
Día 1 (sábado 02:18h) - Reconocimiento
→ ListBuckets: enumera todos los buckets S3 (14 buckets)
→ DescribeInstances: lista instancias EC2
Día 1 (sábado 02:23h) - Persistencia
→ CreateAccessKey: genera nueva clave acceso programático
→ Motivo: mantener acceso incluso si cambian contraseña
Día 1 (sábado 02:31h - 04:47h) - Exfiltración
→ GetObject x 487 veces en bucket "datos-clientes-prod"
→ Descarga: exports CSV, backups SQL, documentos internos
→ Volumen estimado: 2.3 GB datos confidenciales
→ userAgent: "aws-cli/2.15.0" (cambió a CLI para descargas masivas)
Día 1 (sábado 04:52h) - Intento de ocultación
→ PutBucketLogging: desactiva S3 access logging
→ StopLogging: INTENTA desactivar CloudTrail
→ Resultado: AccessDenied (no tenía permisos suficientes)Evidencia clave:
- CloudTrail registró el intento de
StopLogging, demostrando intención de cubrir huellas - 487 eventos
GetObjecten 2 horas desde IP residencial del ex-empleado CreateAccessKeypost-despido demuestra planificación de persistencia- Correlación temporal: acceso nocturno de madrugada, 9 horas después del despido
Resultado judicial: el informe pericial basado en evidencia CloudTrail fue admitido como prueba en procedimiento penal por acceso ilícito a sistemas informáticos (art. 197 bis CP) y revelación de secretos empresariales (art. 278 CP).
Limitaciones de CloudTrail y fuentes complementarias
Limitaciones principales
- Retención gratuita de 90 días: el historial de eventos en la consola de CloudTrail solo mantiene 90 días de management events. Sin un trail configurado con almacenamiento en S3, los eventos antiguos se pierden irremediablemente.
- Data events no activados por defecto: las operaciones sobre datos (lectura/escritura en S3, invocaciones Lambda) no se registran a menos que se configuren explícitamente. Muchas organizaciones no los activan por el coste adicional.
- Sin contenido de datos: CloudTrail registra que se descargó un archivo (
GetObject), pero no el contenido del archivo. Para saber qué datos se exfiltraron, se necesitan fuentes adicionales. - Latencia de entrega: los logs pueden tardar hasta 15 minutos en aparecer en S3, lo que limita la respuesta en tiempo real.
Fuentes complementarias esenciales
| Fuente | Qué aporta | Complementa a CloudTrail en |
|---|---|---|
| VPC Flow Logs | Tráfico de red (IPs, puertos, bytes) | Volumen de datos transferidos, conexiones a IPs maliciosas |
| S3 Access Logs | Detalle accesos a objetos S3 | Granularidad superior a CloudTrail para operaciones S3 |
| GuardDuty | Detección amenazas automática ML | Alertas de comportamiento anómalo, escaneos, cryptomining |
| CloudWatch Logs | Logs de aplicación y sistema | Contexto de lo que ocurría dentro de instancias EC2 |
| AWS Config | Historial cambios configuración | Estado de configuración antes/después del incidente |
Marco legal: evidencia cloud, RGPD y preservación
RGPD e infraestructura cloud
Los datos almacenados en AWS están sujetos al RGPD cuando procesan datos de residentes de la UE. Para investigaciones forenses, las implicaciones clave son:
- Residencia de datos: AWS opera regiones dentro de la UE (Irlanda
eu-west-1, Frankfurteu-central-1, Españaeu-south-2). Verificar que los datos investigados permanecen dentro de regiones europeas es relevante para la licitud del tratamiento. - Responsable vs. encargado: la empresa cliente AWS es responsable del tratamiento; AWS actúa como encargado. El contrato DPA (Data Processing Addendum) de AWS debe estar vigente.
- Acceso forense: el perito debe documentar la base legal para acceder a los logs (orden judicial, interés legítimo del responsable del tratamiento, o investigación de brechas bajo art. 33 RGPD).
Preservación de evidencia cloud
A diferencia de la evidencia en dispositivos físicos, la evidencia cloud es volátil y puede ser eliminada remotamente. El perito debe:
- Solicitar una orden de preservación al proveedor cloud antes de que expiren los períodos de retención
- Realizar copias forenses (export) de los logs a almacenamiento bajo control del investigador
- Documentar hashes SHA-256 de todos los archivos descargados
- Utilizar la validación de integridad nativa de CloudTrail (
validate-logs) como evidencia adicional de no manipulación
Referencia legal: el Convenio de Budapest sobre Ciberdelincuencia (art. 16-17) establece la base para solicitar preservación rápida de datos almacenados, incluyendo logs cloud. España lo ratificó en 2010.
FAQ
P: ¿Se pueden manipular los logs de CloudTrail? R: Si el atacante obtiene permisos de administrador, puede ejecutar StopLogging o DeleteTrail para detener la captura futura. Sin embargo, los logs ya entregados a S3 están protegidos si el bucket tiene versionado activado, Object Lock (WORM) y MFA Delete. Además, los digest files firmados permiten verificar la integridad de cualquier log ya almacenado. El propio evento de StopLogging queda registrado antes de que el trail se detenga.
P: ¿Cuánto tiempo deben conservarse los logs de CloudTrail? R: No existe un plazo único legal. Recomendaciones por estándar: NIST sugiere mínimo 1 año con 90 días online. Para cumplimiento RGPD, conservar al menos el tiempo que dure la obligación de demostrar compliance (generalmente 5 años para sanciones). En la práctica, la mayoría de organizaciones configuran retención de 1 a 3 años en S3 con transición a Glacier para reducir costes.
P: ¿Es CloudTrail suficiente para demostrar cumplimiento RGPD? R: CloudTrail es necesario pero no suficiente. Demuestra quién accedió a qué recursos y cuándo, pero no documenta por sí solo la base legal del tratamiento, el consentimiento, ni las evaluaciones de impacto. Debe complementarse con registros de actividades de tratamiento (art. 30 RGPD), políticas internas y documentación DPO.
P: ¿Qué ocurre si CloudTrail no estaba activado durante el incidente? R: Si no existía un trail configurado, solo se dispone del historial de 90 días de management events en la consola (sin data events). Pasados 90 días, esos eventos se pierden. En este caso, el perito debe recurrir a fuentes alternativas: VPC Flow Logs, S3 Access Logs, logs de aplicación en CloudWatch, y registros de GuardDuty si estaba activo.
P: ¿CloudTrail registra accesos desde la cuenta root de AWS? R: Sí. CloudTrail registra todas las acciones de la cuenta root, incluyendo ConsoleLogin. De hecho, el uso de la cuenta root es en sí mismo una señal de alarma en cualquier investigación, ya que las buenas prácticas de AWS prohíben su uso rutinario. Un login de root puede indicar compromiso de las credenciales más privilegiadas de la cuenta.
Referencias y Fuentes
AWS. (2025). “AWS CloudTrail User Guide - Log File Integrity Validation”. docs.aws.amazon.com
- Documentación oficial del mecanismo de validación de integridad mediante digest files y firma digital
IBM Security. (2024). “Cost of a Data Breach Report 2024”. ibm.com
- 45% de brechas involucraron infraestructura cloud; coste medio $5.17M para brechas cloud
Flexera. (2025). “State of the Cloud Report 2025”. flexera.com
- 94% de empresas usan servicios cloud; AWS 31% cuota mercado global
NIST. (2011). “SP 800-144: Guidelines on Security and Privacy in Public Cloud Computing”. nist.gov
- Marco referencia seguridad cloud; requisitos auditoría y retención logs
ENISA. (2024). “Cloud Security Guide for SMEs”. enisa.europa.eu
- Guía seguridad cloud para pymes europeas; recomendaciones logging y monitorización
Cloud Security Alliance (CSA). (2024). “Cloud Controls Matrix v4.0”. cloudsecurityalliance.org
- Marco de controles de seguridad cloud; sección LOG (Logging and Monitoring) aplicable a CloudTrail
AWS. (2025). “Security Best Practices in IAM”. docs.aws.amazon.com
- Mejores prácticas IAM: MFA obligatorio, principio menor privilegio, rotación claves
INCIBE. (2024). “Guía de Seguridad en Servicios Cloud”. incibe.es
- Guía INCIBE para empresas españolas sobre seguridad en entornos cloud
Convenio de Budapest. (2001). “Convenio sobre la Ciberdelincuencia - Artículos 16-17”. coe.int
- Base legal para preservación rápida de datos almacenados, incluyendo logs cloud. Ratificado por España en 2010
AWS. (2025). “AWS CloudTrail Event Reference”. docs.aws.amazon.com
- Referencia completa de campos de eventos CloudTrail, estructura JSON y tipos de eventos
Código Penal España. “Artículos 197 bis y 278 CP”. boe.es
- Art. 197 bis: acceso ilícito a sistemas informáticos; Art. 278: revelación secretos empresa
RGPD - Reglamento (UE) 2016/679. “Artículos 30, 33 y 34”. eur-lex.europa.eu
- Art. 30: registro actividades tratamiento; Art. 33: notificación brechas 72h; Art. 34: comunicación a interesados
Última actualización: Febrero 2026 Categoría: Herramientas (HER-015) Nivel técnico: Avanzado Relevancia forense: MUY ALTA (fuente primaria evidencia cloud AWS)
¿Necesitas un peritaje forense?
Si necesitas ayuda profesional con análisis forense digital, estoy aquí para ayudarte.
Solicitar Consulta Gratuita
