Challenge: Fake Flag Chaos

Thema: Mixed Challenges · Schwierigkeit: 🔴 Schwer
Art: Noise Injection, Multi-Encoding, Frame/Byte Crypto

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.

ffc_root.zip
Download

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.

Format (Beispiel): ctfgame{...}

Achte auf exakte Schreibweise – keine zusätzlichen Leerzeichen, keine Zeilenumbrüche.