Author Archives: Rup0rt

CodeGate 2012 Quals – misc #1

CodeGate CTF 2012 - misc #1 - task description

Die Aufgabenstellung (misc #1) ist mal wieder recht unklar. Das 35mb-Zipfile zu durchsuchen würde jedenfalls in echte Arbeit ausarten. Also sehen wir uns zuerst den Text der Aufgabenstellung an und versuchen diesen zu dechiffrieren.

“Az hrb eix mcc gyam mcxgixec rokaxioaqh hrb mrqpck gyam lbamgarx oatygqh Erxtoigbqigarx Gidc hrbg gasc gr koaxd erzzcc zro i jyaqc Kr hrb ocqh rx Ockubqq ro Yrg man? Gyc ixmjco am dccqihrbgm”

Was sofort auffällt ist:
– es sind Satzzeichen vorhanden
– teilweise beginnen die “Wörter” mit Großbuchstaben
– einige Zeichenketten wiederholen sich (z.B. “hrb”)

Es liegt also nahe, dass es sich um einen Caesar-Chiffre handelt. Das testen wir an den ersten Wörtern kurz durch:

rup0rt@lambda:~$ for i in {1..25}; do caesar $i < first.plain; done
Ba isc fjy ndd hzbn
Cb jtd gkz oee iaco
Dc kue hla pff jbdp
Ed lvf imb qgg kceq
Fe mwg jnc rhh ldfr
Gf nxh kod sii megs
Hg oyi lpe tjj nfht
Ih pzj mqf ukk ogiu
Ji qak nrg vll phjv
Kj rbl osh wmm qikw
Lk scm pti xnn rjlx
Ml tdn quj yoo skmy
Nm ueo rvk zpp tlnz
On vfp swl aqq umoa
Po wgq txm brr vnpb
Qp xhr uyn css woqc
Rq yis vzo dtt xprd
Sr zjt wap euu yqse
Ts aku xbq fvv zrtf
Ut blv ycr gww asug
Vu cmw zds hxx btvh
Wv dnx aet iyy cuwi
Xw eoy bfu jzz dvxj
Yx fpz cgv kaa ewyk
Zy gqa dhw lbb fxzl

Ein normales Verschieben der Buchstaben führt also in keinem der 25 Möglichkeiten zu einem sinnvollen Ergebnis. Auch wenn der Text sehr kurz ist, führen wir zunächst eine Analyse der Buchstaben-Häufigkeiten durch.
Continue reading