HackCon'19 に参加した (Writeup)
初めての CTF
8/22,23 に某のグループワークでできた CTF グループ SCB の数人で HackCon'19
に参加しました。 はじめての CTF は、新鮮な雰囲気を感じながら寝不足になりつつ、3問解けました。
HackCon offline
HackCon はインドのどっかの大学?が主催してるらしく、時間もそちらにあわせて開始だったので、日本だと夜中の0時半からになっていました。 わくわくしつつ待っていましたが開始時間になっても 問題がみられず、 ググると IST とかいてあるのをインド標準時ではなくイスラエル標準時か何かと勘違いをしたようで、本当の開始は日本時間の1時半でした。 時間になり問題を確認しようとするもサイトが激重になっており、 404 が、 443 になり、 クラウドフレアさんが「落ちましたよー」って言ってきたので、寝ました。 数千チームほど登録していたようなので、運営も大変だったかと思います。
#hackcon .offline
— うおざ (@p1scesCom) August 22, 2019
CTF スタート
昼の4時半までが開催時刻(気づくと夜の10時まで延長されていた)なので、ここから本当のスタートです。flag は d4rk{*some-text-here*}c0de
の形式で渡されました。
朝の8時半ごろに起きサイトを確認すると、昨夜重かったのが理由かわかりませんが全チーム、アカウントの登録が解除されており登録し直しました。 すでに1000点を超えていたチームもいたので、寝て数時間後には直っていたのでしょう。
以下解けた問題3つ(実質2つ)の Writeup です。
Discord
とりあえずできそうな問題からということで問題をみると Misc に 1 点の問題 "Discord" があり、Discord のリンクがあったのでとぶと HackCon の Discord 鯖に参加できました。
運営用と参加者の質問用のチャンネルがあり、 d4rk
で検索をかけると運営チャンネルに flag: d4rk{w3lc0m3_its_d4rk_h3r3}c0de
のコメントがあり 1 点ゲットです。
のちのち参加者用のチャンネルは開催中に、問題に関するヒント、答えっぽいもの、「その問題は楽勝だったぜw」、「誰か教えて」みたいな感じのコメントが溢れ治安を感じました。 CTF はこんな雰囲気なんですかね?(違うと思う)
Small icon much wow
"This is not a flag" と書かれたJPEG の画像が渡されました。
nvim -b
%!xxd!
で画像のバイナリをみて、JFIFの文字が2つあり、画像に別の画像が埋め込まれることがわかりました。
JPEG の EXIF 情報にJPEGの画像が含まれていたので、EXIF のサイズをその画像の前までに書き換えてでてきたQR を読み取り、
flag: d4rk{flAg*h1dd3n_1n_th3_thumbnail}c0de
を手に入れ100点ゲットしました。
Secret Agent
リンクをとぶと "Should d4rkc0de make their own browser" とでてきたので、 User-Agent を書き換えればいいんだなといくつか試しました。
最初の文字列をそのまま $ curl -A "Should d4rkc0de make their own browser" http://hogehoge/~
したら flag: d4rk{useragent_ftwwwwwww}c0de
を手に入れ 100 数点を取った覚えがありますが、
解いた人数によってポイントが変わるようで最後は 100 点になっていました。
My first CTF result. It is good to get three flags. (Discord ...)#hackcon pic.twitter.com/FEWxowov55
— うおざ (@p1scesCom) August 23, 2019
終わり
チームとしての点数はほとんど BabyBlue0 (@BabyBlue0_jp) | Twitter が取ってくださいました(500点以上)。Crypto をばりばり解いてたのでかっこよかったです。 最中メンバーが解いてる問題について共有するように Tasker (@task4233) | Twitter が Google Document を用意してくれて、他の人の進捗、やり方が見られて良かったです。
はじめての CTF は普段考えないクイズのようで、とても楽しかったです。 参加したときには、またこんな感じで書きます。