Story
In einer vergessenen Backup-Struktur von Gepetto Cold Backup wurde der Ordner ffc_root entdeckt.
Die Daten darin stammen aus einem internen Dev-Security-Testlauf, bei dem ein fehlerhaft implementiertes Custom Packet System mit absichtlich beschädigten Headern und massiven Fake-Flag-Injektionen geflutet wurde – mit nur einem Zweck: Scanner und Analysten zu verwirren.
Jede Datei ist eine Falle, ein Köder oder schlicht kaputt. Doch 5 bestimmte Files enthalten echte Payload-Fragmente – verteilt über unterschiedliche Encodings, verschleiert durch einen Frame-Shift und final verschlüsselt mit einem Caesar-Shift auf Byte-Ebene.
Die Lösung ist nirgendwo klar markiert. Sie muss durch Verständnis von Netzwerk-Frames, Encoding-Mechaniken und Byte-Manipulation rekonstruiert werden. Ein ehemaliger Entwickler hinterließ die Nachricht: „Ordnung ist der Schlüssel. Das Format ist die letzte Illusion.“
Ziel
- Rekonstruiere die echten 5 Datenfragmente.
- Decode jedes Encoding korrekt.
- Finde die richtige Reihenfolge über Pattern-Hinweise im Payload.
- Setze den Payload zusammen.
- Entschlüssele final den Byte-Caesar-Shift, um die echte Flag zu generieren.
Challenge-Daten herunterladen
Lade das vorbereitete Archiv ffc_root/ herunter und analysiere es lokal.
Verzeichnisstruktur
Der Spieler bekommt ein Archiv mit folgendem Aufbau:
ffc_root/ │ ├── noise/ → Ablenkungen & hunderte Fake-Flags ├── assets/ → kaputte Medien / Schein-PDFs / RAW-Images ├── storage/ → Dumps, Logs, „Certs“ ohne PEM-Block ├── system/ → Config-Fragmente & encoded payload files └── temp/ → Temporäre Systemreste & 1 Binary-Fragment
Die 5 echten Fragmente liegen verteilt zwischen
assets,
storage,
system und
temp – nicht ordentlich beisammen.
Infos & Tipps
-
Fake Flags:
Alle
ctfgame{…}-Einträge, die du in vielen Dateien findest, sind Noise → ignoriere sie. -
Dateiendungen lügen:
Die Endungen entsprechen nicht unbedingt ihren echten Signaturen.
Prüfe Dateien mit Hexdumps,
strings, Headern & Byte-Offsets. -
Echte Fragmente erkennst du an:
- wiederkehrenden Mustern in Byte-Sequenzen
- Positionsmarkern wie
#1,02,Hint:3,order=4,101, die erst nach Decoding Sinn ergeben - Rekonstruktion des Alphabets nach Byte-Verschiebung
Benötigtes Wissen
- 📄 Wie File-Signaturen funktionieren (
%PDF, X.509-Blöcke, Binärfelder). - 🔢 Wie man Hex-Logs liest und Bits/Bytes zu ASCII mappt.
- 📦 Was es bedeutet, wenn Frames ein „Off-by-One“ haben → alle Bytes sind um 1 Position verschoben.
- 🔐 Dass Caesar hier nicht auf Alphabet-Index läuft, sondern auf ASCII-Byte-Werte.
Flag eintragen
Wenn du alle 5 Fragmente rekonstruiert, korrekt decoded, in die richtige Reihenfolge gebracht und den Byte-Caesar-Shift entschlüsselt hast, erhältst du die finale Flag. Trage sie hier ein, um die Challenge abzuschließen.