Logging & detection - señales y alertas
La detección en la nube empieza en el log: CloudTrail, VPC flow logs, auditoría de IAM y DNS se vuelven señales correlacionadas que alimentan el SIEM, la detección administrada y la automatización de respuesta.
Qué es
Logging & detection es la pieza de la detección que vive de señales: trazas de auditoría, logs del plano de control, logs del plano de datos, eventos de runtime, salidas de DNS y eventos de identidad. El trabajo es recolectar todo eso en un solo lugar, retenerlo el tiempo suficiente y disparar una alerta cuando aparece algo fuera del patrón.
escanea la configuración; escanea el comportamiento del workload. Aquí la pregunta es más amplia: '¿qué pasó en esta cuenta en los últimos 90 días, y volvió a pasar ahora?'. La respuesta vive en la correlación: un AssumeRole puede ser legítimo por sí solo, y criminal cuando se combina con un kms:Decrypt cinco minutos después y un GetObject en un bucket que nadie de ese rol debería abrir.
Qué capturar: trazas de auditoría
El pilar clásico es el log del plano de control: cada llamada de API, firmada, con ARN del principal, IP de origen, user agent, request parameters y response elements. En AWS es CloudTrail; en Azure es el Activity Log; en GCP es Cloud Audit Logs. Es el log que responde 'quién llamó a qué, cuándo, y cuál fue el resultado'. Sin él, el incidente se vuelve una conjetura.
CloudTrail por defecto registra eventos de gestión (crear usuario , eliminar bucket) en la traza de la cuenta, y mantiene los últimos 90 días en la consola. Para forense real, vale la pena crear una traza multirregional que escriba en S3 con object lock, y añadir un Lake o un SIEM encima para consultas y retención más larga.
{
"eventVersion": "1.09",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDAEXAMPLEPRINCIPAL",
"arn": "arn:aws:iam::111122223333:user/alice",
"accountId": "111122223333",
"accessKeyId": "AKIAEXAMPLEACCESSKEY",
"userName": "alice"
},
"eventTime": "2026-10-09T03:17:42Z",
"eventSource": "s3.amazonaws.com",
"eventName": "GetObject",
"awsRegion": "us-east-1",
"sourceIPAddress": "203.0.113.45",
"userAgent": "aws-cli/2.15.0",
"requestParameters": {
"bucketName": "loja-customer-uploads",
"key": "billing/exports/sept-2026.csv"
},
"responseElements": null,
"requestID": "6E3D4B2XAMPLE",
"eventID": "e9c1f0a6-2b1c-4f37-9a4d-3e2b9c0b8c11",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}Logs del plano de datos y de red
CloudTrail no lo ve todo. Registra la llamada de API, no lo que ocurrió dentro de ella ni el paquete que pasó por la red. Para cerrar el hueco, tres fuentes se vuelven obligatorias.
- Flow Logs: todo paquete aceptado o rechazado en las ENIs de la VPC. Origen, destino, puerto, decisión (ACCEPT/REJECT), bytes contados. Cuando salta una alerta de exfiltración, este es el primer lugar para confirmar el destino.
- S3 data events: lectura y escritura en buckets específicos (no activados por defecto en la traza porque son costosos). Para un bucket con o con secretos, es el log que dice quién sacó qué.
- EKS / Kubernetes audit: kube-apiserver registra cada llamada en kube-apiserver-audit.log. ingress create, secret read, exec en un pod - todo entra. Combinado con CloudTrail, muestra la cadena completa: el kubelet hace una llamada, el pod habla con la API, la API devuelve un token, el token se vuelve AssumeRole.
- DNS logs (Route 53 Resolver / Cloudflare): las consultas del resolver quedan guardadas. Útil para detectar DGA (generación de dominios por malware), beaconing y C2 por debajo del radar del firewall.
Centralización y retención
Recolectar todo y dejar que cada cuenta tenga su bucket es receta para que el log desaparezca en el primer incidente. El diseño correcto es fan-out: cada cuenta escribe su log en S3 (o equivalente) con , y un lake agregador o un SIEM corporativo jala todo para una consulta única.
La retención es donde la mayoría de los equipos se resbala. Los logs de gestión necesitan 90 días calientes (consulta rápida) y 365 días fríos (S3 + Glacier). Los logs de flujo de VPC, según el volumen, pasan a 30 días calientes y 180 días fríos. Los logs de auditoría que se volverán evidencia legal piden object lock (WORM) para impedir la alteración retroactiva - sin eso, un atacante con acceso de escritura borra sus propios rastros.
Detección: reglas, anomalías y hunting
La capa de detección tiene tres sabores. Las reglas determinísticas (firmas) se disparan con una firma conocida: ConsoleLogin sin MFA, root API key en uso, disable de CloudTrail. ML / anomalías se disparan ante una desviación del baseline (login desde una región nunca vista, listado masivo de buckets por un usuario que normalmente lista tres). Hunting es el humano buscando lo que nadie pensó en convertir en regla.
GuardDuty combina los tres sabores en una sola oferta administrada: consume CloudTrail, VPC Flow Logs y DNS, y manda findings a EventBridge o Security Hub. La integración típica es que Detective entre para la investigación (grafo de entidades + timeline), Security Hub agregue con Prowler/Inspector, y el (Step Functions, Tines, Torq) dispare el runbook. El secreto es mantener la regla fuera del SIEM cuando el SIEM agrega mal, y usar GuardDuty para el 80% de los hallazgos obvios.
Description: "Reenvía findings críticos de GuardDuty a la cola del SOAR"
State: ENABLED
EventBusName: default
EventPattern: |
{
"source": ["aws.guardduty"],
"detail-type": ["GuardDuty Finding"],
"detail": {
"severity": [{ "numeric": [">=", 7] }],
"type": [
"Recon:EC2/PortProbeUnprotectedPort",
"Recon:EC2/PortProbeOpenPort",
"UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration",
"CredentialAccess:IAMUser/AnomalousBehaviors",
"Policy:IAMUser/RootCredentialUsage",
"Persistence:IAMUser/NetworkPermissions",
"PrivilegeEscalation:IAMUser/AdministrativePermissions",
"Exfiltration:S3/MaliciousIPCaller"
]
}
}
Targets:
- Id: SOARIngestTarget
Arn: arn:aws:sqs:us-east-1:111122223333:soar-ingestIntegración con SIEM
El SIEM (OpenSearch, Splunk, Elastic, Datadog Cloud SIEM) es donde ocurre la correlación. Cada fuente (CloudTrail, GuardDuty, flow logs, audit de k8s, EDR) se vuelve un stream indexado, con su propio parser y campos canónicos (time, actor, target, action, result). La regla del SIEM cruza fuentes: AssumeRole IAM nuevo + CloudTrail GetSecretValue + bucket público tocado en <5 min = sesión sospechosa.
Para reducir costo y ruido, dos hábitos dan alto retorno. Primero, tiers de almacenamiento: calientes en el SIEM (30 días), fríos en S3 (Iceberg, Parquet) con Athena u OpenSearch Serverless consultando bajo demanda. Segundo, detección administrada para lo que no tienes equipo para mantener: GuardDuty cubre el 80% de los hallazgos obvios, CSPM cubre el drift de configuración, CWPP cubre el runtime. El SIEM queda para lo que es específico de la casa.
Dónde aparece en el día a día
- onboarding de la cuenta: traza multirregional activa, Lake o Firehose configurado, S3 con object lock en el bucket de logs, y KMS con la clave dedicada para los logs
- deploy de aplicación: la app emite logs estructurados (JSON) a stdout o a un sidecar; Fluent Bit / Datadog Agent / OpenTelemetry Collector normaliza y envía al agregador
- respuesta a incidentes: el primer comando es 'busca el ARN del principal en la ventana del ataque' - sin log indexado esto se vuelve grep en archivos de texto
- compliance: CIS Foundations, PCI, exigen traza activa y retención mínima; sin un log bien arquitectado, el auditor reprueba antes de abrir el checklist
Puntos fuertes
- visibilidad total de lo ocurrido: una traza inmutable responde 'quién, cuándo, desde dónde, qué' para cualquier llamada de API en la cuenta
- la detección por correlación reduce los falsos positivos: una regla que cruza señales de tres fuentes tiene alta precisión y bajo ruido
- forense decente: object lock + retención larga garantiza que el log del día del incidente aún exista cuando abras el caso seis meses después
Limitaciones
- la custodia del log es trabajo continuo: apagar una traza para reducir costos u olvidar validar el object lock convierte el log en teatro
- el volumen se come el presupuesto: VPC Flow Logs en una cuenta grande cuesta del orden de USD por día; sin filtro ni tier, la factura gana la conversación
- la detección por firma solo atrapa lo conocido: un atacante nuevo con TTPs no mapeadas pasa por GuardDuty, y la defensa queda en el hunting manual y en la regla del SIEM del analista senior
conexiones en el mapa
- Logging & detection - señales y alertasalimenta la posturaCSPM - postura cloud
- Logging & detection - señales y alertasprovee el rastroCWPP - protección de workloads
- Logging & detection - señales y alertasdocumenta decisionesIAM - identidad y acceso
- Logging & detection - señales y alertasdispara la respuestaRespuesta a incidentes en la nube
actualizado el 14/10/2026 · fuentes para profundizar · reportar un error
en otros dominios
- Fundamentos de forense digitalresponsela evidencia de la nube vive en los logs de auditoría
- Evals - calidad medida en producciónai-agentsobservar en producción alimenta la evaluación
- Telemetría de borde y de aplicaciónsecopsla misma idea de señal, aplicada al tráfico L7
Desbloquea
pon a prueba lo que entendiste
Cargando preguntas…