Kattallergiker

Beskrivning

Du har precis exploaterat en tjänst och fått ett root-shell på maskinen, det enda som är kvar är att skriva ut flaggan i /flag.txt!

Lösning

Vi har ett root-shell på maskinen, men när vi försöker köra cat /flag.txt så får vi felmeddelandet /bin/sh: cat: not found.

Det verkar som att det saknas en hel del grundläggande verktyg på systemet. Vi kan dock se att echo fungerar:

/ # echo "Hello, world!"
Hello, world!

Vi kan försöka att läsa innehållet med hjälp av lite bash-scripting. Vi kan använda en while-loop för att läsa filen rad för rad:

while IFS= read -r line; do
  echo "$line"
done < flag.txt

Kör vi detta så får vi ut följande:

Men oj, det fanns visst en escapekaraktär som rensar skärmen i filen strax efter flaggan!

För att undvika att skärmen rensas så kan vi prova att endast skriva ut n antal rader från filen. När vi kommer till rad fem får vi ut flaggan.

i=0
while IFS= read -r line; do
  echo "$line"
  i=$((i+1))
  [ "$i" -ge 5 ] && break
done < flag.txt
Den här file innehåller flaggan.
Den är bara några rader ner!
exit

cratectf{det_är_ändå_rätt_nice_att_ha_lite_shell_utilities}

Flagga: cratectf{det_är_ändå_rätt_nice_att_ha_lite_shell_utilities}

n00bz

Home of the n00bz CTF team.


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

By n00bz, 2025-11-16