VolgaCTF 2013 – stegasic 200

VolgaCTF 2013 - Stegasic 200 - task description

Für diese Forensic-Challenge (stegasic 200) erhalten wir die Information, dass sich irgendwo innerhalb der bereitgestellten Datei Beweise verstecken würden, die den “Bösen Jungen” (und damit wohl die Flagge) offenbaren könnten. Zuerst entpacken wir das Archive und finden …

rup0rt@lambda:~/VolgaCTF2013$ unzip forensics200.zip 
Archive:  forensics200.zip
  inflating: forensics200.pcapng     

rup0rt@lambda:~/VolgaCTF2013$ ls -lh forensics200.pcapng 
-rw-r--r-- 1 rup0rt rup0rt 12M May  1 19:53 forensics200.pcapng

… eine 12 Megabytes große PCAPNG-Datei. Für die Untersuchen werden wir deshalb Wireshark benutzen und uns den Inhalt etwas genauer ansehen. Die Datei besteht zum Großteil aus HTTP-Daten, deren Sichtung keine Auffälligkeit zeigt. Ab Packet Nummer 11021 befinden sich jedoch auch auffällige FTP-Daten:

VolgaCTF 2013 - Stegasic 200 - Wireshark - FTP Transfer - flag.rar

Hier wird die Datei “flag.rar” per FTP übertragen. Nicht zuletzt auf Grund der eindeutigen Benennung, beschränken wir den Inhalt der Datei heraus, indem wir die zugehörigen FTP-Data Verkehr auf Port 20 filtern (follow TCP stream). Anschließend speichern wir die Daten und erhalten somit diese RAR-Datei.

rup0rt@lambda:~/VolgaCTF2013/for200$ unrar x flag.rar

UNRAR 4.10 freeware      Copyright (c) 1993-2012 Alexander Roshal

Enter password (will not be echoed) for flag.rar:

Beim Versuch die Datei zu entpacken stoßen wir an das nächste Problem: die Datei ist passwortgeschützt. Wir müssen die Datei also cracken. Da RAR-Dateien auf Grund der proprietären Verschlüsselung sehr langsam gecrackt werden können, empfiehlt sich kein Brute Force, sondern eine Wörterliste.

Bevor wir nun jedoch alle weiteren ASCii-Datei aus der PCAP-Datei extrahieren um diese in eine Wörterliste zu speichern und als Passwort zu probieren, nutzen wir ein Standardwörterbuch, hier die bekannte Liste: rockyou.txt. Als Cracker wird hier cRARk verwendet, bei dem wir folgende Zeilen in der “password.def” anpassen müssen:

# Dictionary definition - only if $u and $w will be used
$w = "rockyou.txt"    # '\' needs to be shielded
# $u = "user.dic"

# Most common definition - brute-force search using
# only lower-case Latin letters.
# $a *

# Simpliest dictionary attack (to use it, uncomment $w definition 
# in the dictionary definition part of this file
$w

Anschließend starten wir cRARk und erhalten bereits nach wenigen Minuten folgende Ausgabe:

rup0rt@lambda:~/crark$ ./crark-hp ~/VolgaCTF2013/for200/flag.rar 

     cRARk-HP (Encrypted Headers) OpenCL enabled v. 3.43 Freeware
 Copyright 1995-2001, 2006-12 by P. Semjanov, http://www.crark.net
 (c) PSW-soft Password Cracking Library PCL v. 2.0d by P. Semjanov

[...]

Kenny - Header Ok
Kenny
Kenny - Header CRC Ok

Testing archive /home/rup0rt/VolgaCTF2013/for200/flag.rar
Kenny - Header CRC Ok
Testing     flag.odt            
Kenny - CRC OK
In hex (PCL style): \4B \65 \6E \6E \79

Dem Cracker nach lautet das Password “Kenny”. Nun können wir die RAR-Datei entpacken und den Inhalt – die Datei “flag.odt” – begutachten. Am Ende des Science-Fiction-Textes, der auf dieses Capture the Flag anspielt, finden wir:

VolgaCTF 2013 - Stegasic 200 - Solution

Die Lösung lautet “N3xxT_gen3r@t1n_iN_nnars“.

Leave a Reply

Your email address will not be published. Required fields are marked *