UMDCTF 2020 Writeup
Contents
URL: https://umdctf.io/challenges
直感的に解けそうと思ったやつだけやりました。
3問だけ解いて750points、147thでした。
[Steganography]: Crash Confusion (200 points)
Challenge
There’s something weird about this crash screen…
Attachment:
- crash.jpg
Solution
「青い空を見上げればいつもそこに白い猫」でテキトーに見てたらBASE64エンコードされた文字列が出てきました。
$ echo VU1BQ1RGLXt0aHIzc2gwbGRfZXJyMHJ6fQ | base64 -d UMACTF-{thr3sh0ld_err0rz}
どこか読み間違えているのか、`UMACTF`になってしまったので、`UMDCTF`に直してSubmitしました。
Flag: UMDCTF-{thr3sh0ld_err0rz}
[Forensics]: Sensitive (150)
Challenge
Not sure what to make of this…
Attachment:
- sensitive
Solution
まず、どんなファイルなのかを調べます。
$ file sensitive sensitive: data
判別できなかったので、実際に中身を見てみると、元はPDFファイルで1バイト毎に空白文字が入っているようでした。
% P D F - 1 . 5 :
以下のコードで余分な空白文字を取り除きました。
(元々のファイルサイズが187836バイトなので、その半分の93918をb2のサイズとしています。)
|
|
PDFをLibreで開くと、中央に薄っすらQRコードが見えます。
この画像をファイルとして保存し、「青い空を見上げればいつもそこに白い猫」でテキトーに見てたら白黒がハッキリできました。
Flag: UMDCTF-{l0v3-me_s0me_h3x}
[Forensics]: Nefarious Bits (400)
Challenge
After being exposed to some solar radiation, it looks like some bits have turned bad. It is your job to figure out what they are trying to say.
Note: do not attempt to communicate with or contact any of the IP addresses mentioned in the challenge. The challenge can and should be solved statically.
Attachment:
- attack.pcap
Solution
WireSharkで各パケットを見ていくと、IPヘッダ内のフラグの値が0や1に変化しているのがわかります。
$ tshark -r attack.pcap -Tfields -e ip.flags.rb | tr -d "\n" ; echo 01010101010011010100010001000011010101000100011000101101011110110011001101110110011010010110110001011111011000100011000101110100011100110101111101000000011100100011001101011111001101000110110001110111001101000111100101110011010111110011001101110110011010010011000101111101
2進数を文字列に変換すると、フラグが得られます。
Flag: UMDCTF-{3vil_b1ts_@r3_4lw4ys_3vi1}
Author CaptureAmerica @ CTF フラxxグゲット
LastMod 2020-04-20