sakのノート

興味のあることについて色々と

NITAC miniCTF writeup

明石高専で開催されたminiCTFにチームBriskNinjaで参加しました。
結果は得点を獲得した32チーム中11位でした。
今回はある程度の問題数を解くことができたのでWriteupを書こうと思います。

[Binary 100] signature

ELFのファイルが渡されます。
問題文には開けないと書いてあったのでバイナリエディタで開いてみると、どうやらスクリーンショットの画像ファイルのようです。
そこで、マジックナンバーpngのものに書き換えてみたところフラグが得られました。
f:id:sak-39:20200126163557p:plain

NITAC{dr4win9}

[Crypto 100] base64

以下の暗号文が渡されます。

TklUQUN7RE9fWU9VX0tOT1dfQkFTRTY0P30K

普通にbase64デコードをしたらフラグが得られました。
www.base64decode.org

NITAC{DO_YOU_KNOW_BASE64?}

[Network 100] Teacher's Server

pcapngファイルが渡されます。
しばらくパケットを読んでいると、怪しい文字列が見つかりました。

flag: JZEVIQKDPNEVGQKPL5EVGX2NIFKEQRKNIFKESQ2JIFHH2===

あとはこれをデコードしたらフラグが得られました。

NITAC{ISAO_IS_MATHEMATICIAN}

[Network 100] JWT_auth

この問題もpcapngが渡されます。
パスワードの部分を読むと、上のものからヒントが順番に書かれているので、それに従い以下の内容を送信したらフラグが得られました。

username: admin
password: qwerty
verification code: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1ODAwMjIxNjMsImlhdCI6MTU4MDAyMTg2MywibmJmIjoxNTgwMDIxODYzLCJpZGVudGl0eSI6NX0.GXGHSkBaOsgw0pRfwLW-M53LZk7TCz9fSWr53LDQP1Y
NITAC{usin9_0n1y_jwt_is_uns3cur3}

[Web 100] Admin Portal 1

問題ページのソースなどが渡されます。
試しにlogin.phpからregister.phpへ飛び、エラーメッセージを出した後にLoginしてみたところ、フラグが得られました。(適当すぎてごめんなさい)

NITAC{00f_r3g1str4t10n_st1ll_w0rks}

[Misc 200] taiwan

この問題では1枚の画像ファイルが渡されます。f:id:sak-39:20200126172906j:plain
問題文を見た感じ台湾のどこかのようです。
最初にTwitterで作問者の方などが同じような画像を上げてないか見てみましたが、空振りでした。

次にGoogleの画像検索にかけてみましたが、関係ない画像ばかりでこれも空振りでした。

ここでちょっと方法を変えて、画像を下のように加工してみます。
f:id:sak-39:20200126175253j:plain

このカラフルなポール、結構特徴的なものなのでひっかかるかなと思い、Googleと今度はYandexにも投げてみたところ、Yandexのほうで見事に当たりました。

f:id:sak-39:20200126175620p:plain
下の部分がレンガになっているものは全部同じ場所のものですね。

ここで引っかかった画像をさらに検索にかけていくと、徐々に場所を絞り込めます。

f:id:sak-39:20200126180055p:plain

ここからブログなどに飛んで情報を集めていき、最終的に下のように場所が割り出せました。

f:id:sak-39:20200126180647p:plain

あとはここに書いてある場所をGoogleストリートビューでお散歩すればフラグが得られます。

f:id:sak-39:20200126181205p:plain

f:id:sak-39:20200126181227p:plain

ありました!
ということでフラグは"ATP1"です。

NITAC{ATP1}

感想

今回のCTFは初心者から上級者まで楽しめるちょうど良い難易度だったのでとても良かったです。来年も開催されるならぜひ参加したいですね。

ただ、Webが1問しか解けなかったのが悔しい。。