Deserialisering

Beskrivning

Den här flaggan kom från en serieport och avlyssnades med ett oscilloskop. Formatet sägs vara “UART 8N1 9600 baud” om det är till någon nytta.

Lösning

Till utmaningen får vi filen trace.vcd som är en VCD-fil (Value Change Dump) som innehåller signaldata från ett oscilloskop.

Parsar vi VCD-filen med något verktyg så får vi ut signaldata som följande:

uart-1: Start bit
uart-1: 1
uart-1: 1
uart-1: 0
uart-1: 0
uart-1: 0
uart-1: 1
uart-1: 1
uart-1: 0
uart-1: 63
uart-1: Stop bit
uart-1: Start bit
uart-1: 0
uart-1: 1
uart-1: 0
uart-1: 0
uart-1: 1
uart-1: 1
uart-1: 1
uart-1: 0
uart-1: 72
uart-1: Stop bit 

Vi kan se att varje byte är uppbyggd av en startbit, 8 databitar och en stoppbit. Vi kan extrahera databitarnas värden och konvertera dessa till ASCII-tecken.

Gör vi detta för hela filen så får vi fram flaggan.

Flagga: cratectf{ett_tecken_i_taget}

n00bz

Home of the n00bz CTF team.


Write-up för CTF-utmaningen 'Deserialisering' från Crate CTF 2025

By n00bz, 2025-11-16