EOF{its_a_damn_loop}| Metric | Value | Details |
|---|---|---|
| Initial File Size | 17 MB | Unusually large PNG |
| ZIP Archive Offset | 296306 bytes | Found via binwalk |
| Nested ZIP Levels | 68 | temp_68.txt → temp_0.txt |
| Base64 Encoding Layers | 48 | Decoded iteratively |
| Total Iterations | 116 | 68 + 48 |
| Final Flag | EOF{its_a_damn_loop} | ✅ Captured |
file recursive_hell.png
# Output: PNG image data, 680 x 512, 16-bit/color RGB
# Observation: File size 17 MB - suspiciously large
exiftool recursive_hell.png
# Warning: "Text/EXIF chunk(s) found after PNG IDAT"
binwalk recursive_hell.png
# Output: ZIP archive data at offset 296306
dd if=recursive_hell.png of=extracted.zip bs=1 skip=296306
#!/bin/bash
# Script to extract 68 nested ZIP files
for i in {67..1}; do
if [ -f "temp_$i.txt" ]; then
mv temp_$i.txt temp_$i.zip
unzip -q temp_$i.zip
fi
done
#!/bin/bash
input="temp_0.txt"
counter=0
while true; do
output="decoded_$counter.txt"
base64 -d "$input" > "$output" 2>/dev/null
if grep -qE '^[A-Za-z0-9+/=]+$' "$output"; then
input="$output"
counter=$((counter + 1))
else
grep -o "EOF{[^}]*}" "$output"
break
fi
done
✅ SUCCESS! Flag captured after 116 total iterations!
Flag: EOF{its_a_damn_loop}
binwalk - Critical for detecting embedded ZIPdd - Binary data extraction at specific offsetunzip - ZIP archive extractionbase64 - Base64 decodingbash - Shell scripting for automation