























Incident response in the cloud is derailed not by a lack of skill, but by a lack of visibility. Security teams frequently discover critical blind spots only after an incident is already underway, leading to delayed containment, inaccurate attribution, and incomplete forensic analysis.
This report walks through six realistic, real-world inspired scenarios where missing log sources prevented effective investigations. Each scenario highlights the specific AWS logs required to answer the most important questions during a security incident.
AWS CloudTrail (management events), VPC Flow Logs, and Route 53 Resolver Query Logs provide a strong foundational baseline for cloud security visibility. However, modern AWS environments rely heavily on serverless, containerized, and data-plane services that require additional logging.
Relying only on this baseline leaves critical gaps in areas such as object-level access, Kubernetes control-plane activity, Lambda invocations, host-level telemetry, and DNS analysis.
| Blind Spot | Missing Log Source | Impact |
|---|---|---|
| Network Traffic Origin | VPC Flow Logs | Inability to trace the internal source IP responsible for suspicious/egress traffic |
| Data Exfiltration Scope | S3 Server Access Logs | Inability to determine which specific S3 objects were accessed or downloaded |
| Kubernetes Attribution | EKS Audit Logs | Inability to attribute Kubernetes control-plane actions, such as pod creation, to a specific Kubernetes identity |
| Serverless Abuse | CloudTrail Lambda Data Events | Inability to detect and attribute direct lambda:InvokeFunction API calls outside normal triggers |
| Host-Level Forensics | OS/App Logs via CloudWatch Agent | Lack of host-level evidence such as successful logins, privilege changes, and system activity |
| DNS C2 Channels | Route 53 Resolver Query Logs | Inability to see the actual domains being queried and identify DNS-based command-and-control activity |
At 03:12 UTC, an automated alert fires for a sudden and sustained spike in data transfer costs, traced back to a production NAT Gateway. The security team confirms the high-volume egress traffic but quickly reaches a dead end.
They have GuardDuty findings and basic AWS monitoring data, but the most important log source, VPC Flow Logs, was never enabled for the VPC. As a result, they have no way to determine which internal resource is responsible for the traffic.
Step 1: Initial anomaly detected
Step 2: Corroborating threat intelligence
Step 3: The search for the source (the blind spot)
Step 4: The painstaking manual search
Without VPC Flow Logs, the team lacked visibility into the internal source of the traffic. These logs would have provided exact srcaddr and dstaddr details, enabling immediate identification of the affected host.
Enable VPC Flow Logs for all production VPCs and critical subnets. They are essential for tracing network activity and drastically reducing investigation time.
A GuardDuty alert flags suspicious S3 activity from a malicious IP address. Investigation reveals that IAM credentials were compromised. CloudTrail management events show activity against a critical S3 bucket, and S3 data events are enabled but S3 Server Access Logs were never configured.
Step 1: Initial detection
Step 2: Identify compromised principal
Step 3: Attempt object-level visibility
Step 4: The practical forensic gap
CloudTrail captures API activity but lacks the detailed context needed for real-world forensics. S3 Server Access Logs provide crucial evidence such as:
Without them, precise breach scope cannot be determined.
Treat S3 Server Access Logs as mandatory for all sensitive buckets, using CloudTrail data events only as a complementary source.
An attacker, having gained initial access, moves laterally toward an EKS environment. The security team is alerted to suspicious outbound traffic from a pod but finds themselves in a difficult position. They have access to VPC Flow Logs, which show the anomalous network connections, and CloudTrail management events, which track AWS API activity. However, they soon discover a critical blind spot: EKS Kubernetes audit logs were never enabled. This missing log source prevents them from attributing control-plane actions, such as who created the rogue pod and how it was introduced into the cluster.
Step 1: Network anomaly detected
Step 2: ENI to node mapping
Step 3: Node to pod mapping
Step 4: The control plane blind spot
The absence of EKS audit logs was the critical failure in this investigation. Had they been enabled, the team would have had records of Kubernetes API server activity, including fields such as:
These logs would have identified which Kubernetes identity created the pod and when. While audit logs do not always map directly to an AWS IAM user, they provide the essential control-plane visibility required to trace activity back to a service account, automation system, or compromised cluster credential.
Always enable EKS API server and audit logging for production clusters. These logs are indispensable for understanding who performed actions in the Kubernetes control plane and for reconstructing malicious activity during incident response.
The security team receives an alert from an external partner reporting suspicious activity originating from one of the company’s public APIs. The partner claims they are seeing automated requests performing unexpected actions at high speed. Internal monitoring confirms that a specific Lambda function is executing far more frequently than normal.
CloudWatch Logs show unusual behavior inside the function, and API Gateway access logs explain some of the activity. However, the team soon realizes a critical gap: CloudTrail data events for Lambda Invoke were never enabled. As a result, they have no visibility into whether the function is being invoked directly through the Lambda API rather than through its intended triggers.
Step 1: Anomalous activity detected
Step 2: Function runtime analysis
Step 3: Trigger analysis
Step 4: The invocation blind spot
CloudTrail is enabled by default in AWS accounts, but only management events are captured automatically. Lambda invocations (InvokeFunction) are data plane events, which are not logged unless CloudTrail data events are explicitly configured.
Because Lambda Invoke data events were not enabled, the team lacked the only native AWS mechanism for identifying direct API invocations of the function, including:
It is important to note that CloudTrail Lambda data events do not capture every possible execution. Invocations triggered by services such as API Gateway, SQS, EventBridge, or SNS rely on their own trigger-layer logs for attribution. However, data events are essential for detecting unexpected or unauthorized direct invocations that bypass those services.
Enable CloudTrail data events for critical or publicly exposed Lambda functions. Default CloudTrail logging does not include invocation activity. Trigger-specific logs (API Gateway, ALB, SQS, EventBridge) are necessary for normal attribution, but only CloudTrail Lambda Invoke data events can reveal direct API abuse. Relying solely on runtime logs and trigger logs leaves a dangerous blind spot.
A security operations center receives a high-severity alert from AWS GuardDuty for ‘UnauthorizedAccess:EC2/SSHBruteForce’ targeting a production EC2 instance. Shortly after, VPC Flow Logs show suspicious outbound traffic from the same instance to an unknown IP address over a non-standard port. The incident response team has access to GuardDuty findings, VPC Flow Logs, and CloudTrail management events. However, they quickly discover that the CloudWatch Agent was not configured to collect operating system (OS) or application logs from the instance, leaving them with almost no visibility into what occurred on the host after the suspected compromise.
Step 1: Initial detection
Step 2: Network activity corroboration
Step 3: Host-level activity investigation (the blind spot)
The absence of OS and application logs collected by the CloudWatch Agent created a major investigative blind spot. Without centralized host logs, the team could not determine:
It is important to note that the CloudWatch Agent primarily collects and centralizes existing logs. It does not generate detailed process execution or command history telemetry on its own. Deeper visibility into commands run and processes spawned would require additional tooling such as auditd, EDR solutions, osquery, or AWS Systems Manager Session Manager logging. However, even standard OS logs would have provided critical foundational evidence that was completely absent in this case.
Deploy the unified CloudWatch Agent to all production EC2 instances to collect essential OS and application logs (e.g., Linux auth.log and syslog, Windows Security logs). Centralizing these logs in CloudWatch provides the minimum host-level telemetry required for incident response. For advanced investigations, complement this with process-level monitoring solutions such as auditd, EDR tools, or SSM Session Manager logging to capture detailed attacker activity.
During a routine review of network traffic, security analysts notice an unusual pattern: small, periodic bursts of UDP traffic on port 53 egressing from a production VPC. The team has access to VPC Flow Logs, which confirm the source instance and destination IPs. However, they are missing a critical piece of the puzzle Route 53 Resolver query logs were never enabled for the VPC. This means that while they can see DNS traffic is occurring, they have no visibility into what domains are being queried, leaving them blind to a potential DNS-based command-and-control (C2) channel.
Step 1: Network anomaly detected
Step 2: Source instance identification
Step 3: DNS Query Analysis (the blind spot)
The absence of Route 53 Resolver query logs created a critical visibility gap, obscuring the adversary’s DNS infrastructure and severely slowing down containment. The team could identify which instance was generating suspicious DNS traffic, but not the domains being contacted. Without this data, they also could not analyze for techniques such as DNS tunneling, where attackers embed exfiltrated data within DNS queries themselves.
Enable Route 53 Resolver query logs on all production VPCs and centralize them for analysis. Integrating these logs with a SIEM and Route 53 Resolver DNS Firewall provides powerful capabilities to detect and block advanced threats such as DGA-based command-and-control and DNS tunneling.
Across every scenario, the pattern is the same: investigations stall when logs are missing.
Effective AWS forensics depends on answering a few core questions:
Don’t wait for a real incident to discover your blind spots. Enable comprehensive logging now, centralize it securely, and ensure immutability using tools such as S3 Object Lock.
A proactive logging strategy is one of the highest-impact investments you can make in cloud security. Your future incident response team will be grateful you did.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。