← All Threat Hunting ReportsThreat Hunting Exercise

Threat Hunting Exercise: Analyzing AWS S3 Honeypot Bucket Logs

Diving into cloud honeypot data with this CSV (AWS_S3_HoneyBucketLogs.csv) - a treasure trove for spotting T1595.002: Active Scanning - Vulnerability Scanning in AWS environments. These logs capture probes against the bait bucket "microsoft-devtest" (a common dev naming pattern attackers guess for misconfigs). Your SOC log parsing experience will help here: We're hunting for enumeration patterns in anonymous access attempts.

Step 1: Hypothesis Formation

Hypothesis: Automated scanners and scripts (e.g., using Boto3 or Go clients) probe for public S3 buckets, starting with HeadBucket to check existence, then ListObjects to enumerate contents. High repeated attempts (e.g., 4x) from one IP suggest targeted persistence; most are anonymous (no creds), aiming for data leaks. Ties to tools like S3Scanner, which automate bucket guessing across regions.

Null Hypothesis: Legit traffic (e.g., internal tools). Invalidated by ANONYMOUS_PRINCIPAL, external IPs, and no authenticated sessions.

Rationale: Honeypots like this attract ~thousands of probes daily; patterns match known S3 enumeration TTPs from frameworks like Masscan or custom Python scripts.

Step 2: Data Sources and Scope

Step 3: Key Findings

Parsed the CSV: 12 probes, 9 unique IPs (mostly EU/Asia), top UAs: Go-http-client/1.1 (3x, common in scanners), Boto3 (2x, AWS SDK abuse). One standout: 177.131.167.145 with 4 repeats in 2022. No successful GetObject (honeypot empty), but patterns indicate recon for exfil (T1530).

Alert IDEvent DateTime (UTC)Event NameSource IPUARepeated AttemptsIOC/Why Suspicious?
3022022-02-18 17:34:57ListObjects177.131.167.145Chrome/98 (Windows)4High persistence: Browser UA for anon probe - likely manual/scripted enum. IP in Brazil; matches scanner patterns.
3012022-02-18 14:54:56ListObjects212.83.184.16Boto3/1.17.40 (CentOS)1SDK from Linux VM - automated guessing across regions (s3.amazonaws.com). IP France.
3002022-02-17 14:18:02ListObjects212.83.184.13Boto3/1.17.40 (CentOS)1Similar to above; sibling IP - coordinated scan. list-type=2 (version 2, common in tools).
2992022-02-17 10:34:18ListObjects109.70.66.85Go-http-client/1.11Golang client - stealthy, used in S3Scanner-like tools. IP Germany.
2982022-02-16 16:57:17HeadBucket194.126.177.33(empty)1Existence check precursor to List; no UA hides scanner. IP Germany.
82020-07-12 20:19:41ListObjects43.251.92.37aws-cli/1.17.9 (Windows)1CLI probe; IP India (Alibaba Cloud?).
72020-07-12 17:05:38ListObjects43.251.92.37Ruby1Same IP, Ruby script - multi-tool from one actor. Authenticated (account 451083579297).
62020-06-24 10:20:33ListObjects95.217.6.207Go-http-client/1.11Go scanner; IP Germany (Hetzner).
52020-06-24 10:16:51HeadBucket95.217.6.207Go-http-client/1.11Paired Head+List - classic workflow.
42020-05-01 14:28:11HeadBucket103.73.151.226Ruby1Early probe; IP India.
32020-02-11 03:33:15ListObjects34.68.153.199python-requests/2.22.01Python lib - scripted; IP US (Google Cloud).
22020-02-11 03:33:11ListObjects34.68.153.199python-requests/2.22.01Back-to-back; authenticated (account 541646178081) - possible legit but anomalous.

Validation:

Step 4: Recommendations & Next Steps

Hypothesis confirmed - S3 bucket scanning campaign! These are low-effort probes for easy wins. In your SOC, IP grouping would flag clusters.