Byte Bandits CTF 2019 Writeup

この大会は2019/4/13 0:30(JST)~2019/4/14 0:30(JST)に開催されました。
今回もチームで参戦。結果は556点で319チーム中33位でした。
自分で解けた問題をWriteupとして書いておきます。

Greetings (misc)

IRCのfreenodeで#BBCTFチャネルに入ると、フラグがあった。

05:08 *topic : ByteBandits CTF 2019 | https://ctf.euristica.in | euristica@iiti.ac.in | Please visit https://ctf.euristica.in/rules | flag{Welc0me_t0_Byt3B4ndits_CTF_Y0u_did_y0ur_p4rt}
flag{Welc0me_t0_Byt3B4ndits_CTF_Y0u_did_y0ur_p4rt}

RivestShamirAdleman (crypto)

RSA暗号で、nが大きく、eが小さいため、e乗根で復号する。

from Crypto.Util.number import *
import gmpy

e = 3
c = 56274920108122478990888092521371739605513959053322262229138771723654033167756128122086229722406180593128664696512912311575327724724695863345048713415525599333

m = gmpy.root(c, e)[0]
flag = long_to_bytes(m)
print flag
flag{nO_paDDing00_rsa}

oldschool (crypto)

古典暗号をいろいろ試すと、Affine暗号だったようだ。https://www.dcode.fr/affine-cipherで復号。

A=3,B=23	THEFLAGISDIFFRENTFROMTHAFFINECIPHR

数字は抜けているので埋め、小文字・大文字を暗号と合わせる。

Csj mexp vz gvmM3wjkCMwnHCs3XmMvkjDvQs3w
The flag is difF3renTFroMTh3AfFineCiPh3r
flag{difF3renTFroMTh3AfFineCiPh3r}