Evlz CTF 3.0 Writeup

この大会は2020/9/26 0:30(JST)~2020/9/27 0:30(JST)に開催されました。
今回もチームで参戦。結果は51点で121チーム中46位でした。
自分で解けた問題をWriteupとして書いておきます。

Welcome (Misc 1)

Discordに入り、#announcementsチャネルのトピックにフラグが書いてあった。

evlz{1_pl3dg3_t0_pl4y_4_f41r_g4m3}ctf

Influenza (Crypto 50)

フラグは"evlz{"から始まることを前提にXOR鍵を求め、復号する。

ct = '56141449194b6c200104274d6c1a48411f1b4704'.decode('hex')

pre_flag = 'evlz{'
key = ''
for i in range(len(pre_flag)):
    key += chr(ord(pre_flag[i]) ^ ord(ct[i]))

key = key[:3]

flag = ''
for i in range(len(ct)):
    code = ord(ct[i]) ^ ord(key[i%len(key)])
    flag += chr(code)
print flag
evlz{3_By7E5_x0r}ctf