この大会は2023/3/25 8:00(JST)~2023/3/27 2:00(JST)に開催されました。
今回もチームで参戦。結果は525点で571チーム中75位でした。
自分で解けた問題をWriteupとして書いておきます。
welcome (misc)
問題にフラグが書いてあった。
UMASS{W3LC0M3_T0_TH3_C0MP}
DeepFried (web)
jpgファイルを指定し、アップロード後に、キャプションを指定すると、タイトルと画像が表示されるようなWebページ。
適当なjpgファイルを選択して、Submitする。
http://deepfried.web.ctf.umasscybersec.org:3000/captionsubmitにリダイレクトされ、クッキーには以下のように設定されている。
cca6d00d1827987c7653ca09df8e4fe7/TheFlag.jpg
"../"は削除されるが、"....//"で親ディレクトリを指定できることを使う。
クッキーの値を"....//restricted_memes/TheFlag.jpg"に書き換え、適当なcaptionを指定し、Submitする。
/restricted_memes/TheFlag.jpgの画像が表示できたが、フラグが読めない。
flag.txtを読む必要があるようだ。
クッキーの値を"....//restricted_memes/flag.txt"に書き換え、適当なcaptionを指定し、Submitする。画像は表示されないので、HTMLソースを見ると、以下のように書いてある。
<div id="stuff"> <div id="content" style="text-align: center;"> <h1>overwrite cookie</h1><br> <img src="VU1BU1N7dkBNbyRfQVByMG5UYVJfMSFpIUkhfQo="> </div> </div>
base64文字列をデコードする。
$ echo VU1BU1N7dkBNbyRfQVByMG5UYVJfMSFpIUkhfQo= | base64 -d UMASS{v@Mo$_APr0nTaR_1!i!I!}
UMASS{v@Mo$_APr0nTaR_1!i!I!}