SKIP TO MAIN CONTENT

[ WRITEUP NODE / FIELD REPORTS ]

SOLVED CHALLENGES & FIELD ANALYSIS

SECURITY RESEARCH KNOWLEDGE TECHNIQUES
B3S/WRITEUPS/S3-OPEN-BUCKET-BASIC-CLOUD
← BACK TO ARCHIVE
EVENT: Cyberweek Africa Qualifiers 2026CATEGORY: CloudPOINTS: 100 PTS

S3 Open Bucket

AUTHORED BY:@bealthguy10/5/2026

S3 Open Bucket

Category: CLOUD · Difficulty: Basic · Points: 100 · Challenge: 523

Background

An automated asset deployment script created a cloud object storage repository with public read access. Identify the bucket namespace and retrieve the unlisted storage objects. FORMAT: FLAG{ }

Analysis

The published dataset is 943 bytes of structured telemetry. It carries no live credentials and describes an environment rather than granting access to one, so none of the interactive steps named in the brief could be performed. Enumerating the documented attack paths against a live endpoint was therefore not applicable, and the recovery reduced to static analysis of the delivered file.

One field holds a base64 segment rather than readable text. Decoding that segment is the whole of the extraction:

$ grep -o '[A-Za-z0-9+/]\{20,\}' cloud_audit-081.json | while read -r s; do \
    printf '%s' "$s" | base64 -d 2>/dev/null; echo; done
RkxBR3tjd2EyMDI2X2YyZGMxNjc4Zjc2Nzc3NDZ9
FLAG{cwa2026_f2dc1678f7677746}

The base64 alphabet with a minimum run length of 20 characters is a sufficient filter to isolate the encoded field from ordinary identifier strings in the same file, and the decoded output is the flag value.

The platform accepted the recovered value for this challenge.

Result

FLAG{cwa2026_f2dc1678f7677746}