2024 Cyber Apocalypse: Urgent
Challenge Information
| Attribute | Details |
|---|---|
| Event | 2024 Cyber Apocalypse |
| Category | Forensics |
| Challenge | Urgent |
| Difficulty | Very Easy |
Summary
Urgent is a forensics challenge involving a phishing email (.eml file). The email contains multiple base64-encoded sections requiring decoding. The challenge involves identifying email sender/receiver information, extracting attachments, and decoding multiple layers of encoding (base64 and URL encoding) to recover the flag.
Analysis
The email structure reveals:
- Email Sender: anonmember1337@protonmail.com
- Email Receiver: factiongroups@gmail.com
- Content Blocks: Two base64-encoded MIME parts
- Block 1: HTML email body content
- Block 2: HTML attachment named “onlineform.html”
- Encoding Layers: Base64 → URL encoding → plaintext
- Payload Type: Phishing form designed to capture credentials
Solution
Step 1: Extract Email Headers
Open the .eml file and identify:
From: anonmember1337@protonmail.comTo: factiongroups@gmail.comSubject: [Phishing Subject]Step 2: Decode First Base64 Block
First Content-Type block has:
Content-Transfer-Encoding: base64- This is the HTML email body
Extract and decode using CyberChef or command line:
echo "base64_encoded_content" | base64 -d > email_body.htmlThis reveals the phishing email body/conversation context.
Step 3: Decode Attachment
Second Content-Type block with:
Content-Transfer-Encoding: base64Content-Disposition: attachment; filename="onlineform.html"
Extract the attachment content and decode:
echo "base64_encoded_attachment" | base64 -d > onlineform.htmlStep 4: URL Decode the Payload
The decoded HTML file contains URL-encoded content. Use CyberChef to:
- Paste the decoded HTML
- Add “URL Decode” recipe
- Execute to reveal plaintext flag
Alternatively, using Python:
from urllib.parse import unquote
encoded_content = "URL%20encoded%20string..."decoded = unquote(encoded_content)print(decoded)Tool Usage: CyberChef
- Navigate to CyberChef website
- Input the encoded content
- Drag “From Base64” recipe
- Drag “URL Decode” recipe
- Output reveals the flag
Investigation Steps
- Open .eml file in text editor
- Identify “From”, “To”, and “Subject” fields
- Find Content-Type headers
- Extract first base64 block
- Decode first block with Base64
- Extract second base64 block (attachment)
- Decode attachment with Base64
- Analyze HTML content
- Apply URL decoding
- Extract flag from decoded content
Email Structure Reference
MIME email structure for phishing:
- Headers (From, To, Subject, etc.)
- Content-Type: text/html (body)
- Boundary markers (separating MIME parts)
- Base64-encoded content
- Attachments with Content-Disposition
Key Takeaways
- Email files contain plaintext MIME structure that’s manually readable
- Multiple encoding layers are common in phishing campaigns
- Base64 is often used for email content encoding (not encryption)
- URL encoding hides suspicious characters in payloads
- CyberChef is invaluable for chaining multiple decode operations
- Always scrutinize email attachments regardless of apparent legitimacy
- Phishing emails often mimic legitimate services to appear trustworthy