TsukuCTF 2021に1人チームfumyianll23
で参加しました.公式write-upはこちらで公開されています.著者にとって初のwrite-upです.
開催期間は2021/09/11 12:00 (JST) - 2021/09/12 11:59 (JST) でした.その他のルールは以下の通りです (cf. Rules):
TsukuCTF について
開催期間は 2021/09/11 12:00(JST) ~ 2021/09/12 11:59(JST)です。 ジャンルは OSINT, Misc, Web, Crypto, Hardware, etc… を予定しています。 問題の不具合や運営への質問は公式 Twitterへの ダイレクトメッセージ機能 をご利用ください。Twitter が使用できない方はtsukuctf@gmail.com宛にご連絡ください。ただし、メールアドレス宛の連絡は少々時間をいただく場合がございます。 運営からの連絡は CTFd の Notifications 機能およびTwitterを用います。コンテスト中以外の連絡は基本的にTwitterを用います。 フラグは何度でも入力することができます。ただし一部の問題は回数制限が設けられています。その場合は問題文に記載がございます。 誤ったフラグを入力することによる減点はありません。 問題の点数は解かれた人数に応じて減少します(一部を除く)。 問題サーバへ大量アクセスすることでフラグを入手できる問題はございません。一部の問題を除いて 10 回以上アクセスする必要はありません。 有償のツールや環境でしか解くことができない問題はありません。 チームで参加する場合はアカウントを共有するのではなく、Team 機能をご利用ください。 本 CTF の開催期間終了後であれば是非 Writeup を公開ください。 本 CTF は NICT 主催の若手セキュリティイノベーター育成プログラムSecHack365の修了生イベントに際して開催されています。
正の得点を得ている182チーム中91位 (752 pts) でした.
TsukuCTF 2021にご参加いただきありがとうございます。フラグの形式は全て
TsukuCTF{}
です。この問題のフラグはTwitterのアカウント名です。質問などはTwitterのDMにお願い致します。※トップページのロゴに何か隠れています… (競技には無関係です) ※追記(12:28): アカウント名及びスクリーンネームどちらを入力してもAcceptされるよう変更いたしました。誤解を招く表記だったことお詫び申し上げます。
Twitterのリンクを踏むとTsukuCTFのTwitterアカウントに飛びます.アカウント名がそのままフラグになっていました.
フラグ:TsukuCTF{2021}
ハッカーにとってラーメンは必須の飲み物だといわれています。写真のラーメン店の本店のインスタグラムIDを特定してください。
トッピングのヤングコーンが特徴的だったので「ラーメン ヤングコーン」でググったところ,鬼金棒というお店がヒットしました.メニューからラーメンの画像をいくつか見ていきましたが,どのラーメンも真っ赤で辛そうです (← 違う,そうじゃない).残念ながら目当てのラーメンではないようです….「ラーメン ベビーコーン」でググってみてもあまり変わりませんでした. いろいろ調べてみるとGoogle検索では画像から検索することができるようです.配布された画像で検索をかけてみると, “serveware” という英単語で検索されて画像もスープのようなものばかりがヒットしました.これも違う…. 今度は「ベビーコーン ラーメン」でググってみると東京でおすすめのラーメン(ヤングコーン)をご紹介! (4ページ目)という記事を発見.記事を眺めていると配布された画像そっくりのラーメンが!!どうやら銀座篝 Echika池袋店というラーメン屋だそうです.店名さえ分かればこっちのもの.Instagramにてお店のアカウントを探し出して無事にフラグを入手できました.
フラグ:TsukuCTF{kagari_honten}
大文字文字列
TSUKUSHI
を可能な限り何度も取りつくしてください。残った文字列がフラグです。フラグ内に大文字文字列TSUKUSHI
は含まれていません。※追記(12:38): 文中に大文字を追加しました。
長い長いテキストファイルが配布されました.エディタの置換機能などを利用してひたすら “TSUKUSHI” を削除していくと,フラグを入手できました.
フラグ:TsukuCTF{Would_you_like_some_fresh-baked_Tsukushi?}
Tsukushiくんは自分を鍛えるために、毎日欠かさず活動を行う習慣化を行うことにしました。マンダラートを利用しますが、晒されるのが恥ずかしいので目標の部分を消してしまったようです。目標を見つけてください。
https://docs.google.com/spreadsheets/d/1Q-3HaD9aIsjT6bDFSp3avXMbrHB6g0OsR3hfuB9MSvE/edit#gid=0
※追記(12:45): フラグが想定とは別のものになっていましたので修正いたしました。以前のフラグでもAcceptされるよう変更しました。
リンクを踏むと以下のようなGoogleスプレッドシートを見ることができました:
一見するとマンダラートの中央のマスは何も書かれていないように思えますが,これは文字とマスの背景が同じ色になっています.マスをクリックすると文字が読めるようになり,フラグを入手できました.
フラグ:TsukuCTF{yak1n1ku_ta6eta1}
少し早いが筑紫くんと素日華ちゃんは少し早いが今年のクリスマスについて話をしていた。
素日華ちゃん「クリスマス、キーホルダーが欲しいな~」 筑紫くん「いいよ~素日華の好きな動物を模したものを作っちゃおうかな~」 そして、筑紫くんは3Dプリンタで彼女の好きな動物をキーホルダーにして、メッセージも残したらしい。
※この問題はCADソフトが手元にない場合でも解くことが可能です。
STLファイルが配布されました.Windowsには「3Dビューアー」が標準インストールされているので,ファイルを開くことができます.3Dモデルをひっくり返すと,裏面にフラグが彫られていました:
フラグ:TsukuCTF{ILIK3B3ar}
Tsukushiくんはシリアル通信等メッセージを送ることに飽きてしまったため、Lチカ(LEDを光らせること)でメッセージを伝える方法を考案した。メッセージを(ローマ字(大文字)、数字、記号を含む)フラグ形式で答えてください。例えばメッセージがTSUKUSHI123&の場合、フラグはTsukuCTF{TSUKUSHI123&}となります。
※この問題はマイコンが手元にない場合でも解くことが可能です。(Tinkercadを使ったardunioのシミュレータも使用可)
以下のようなINOファイルが配布されました:
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
void blinking(){
digitalWrite(LED_BUILTIN, HIGH);
delay(500);
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(300); // wait for a second
}
void lit(){
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(2000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(300); // wait for a second
}
void wait(){
digitalWrite(LED_BUILTIN, LOW);
delay(1200);
}
// the loop function runs over and over again forever
void loop() {
blinking();
wait();
lit();
blinking();
wait();
blinking();
lit();
lit();
lit();
wait();
lit();
lit();
lit();
lit();
lit();
wait();
lit();
blinking();
lit();
lit();
wait();
blinking();
blinking();
blinking();
blinking();
wait();
blinking();
lit();
wait();
blinking();
lit();
blinking();
wait();
lit();
blinking();
blinking();
wait();
blinking();
lit();
lit();
wait();
blinking();
lit();
wait();
blinking();
lit();
blinking();
wait();
blinking();
wait();
lit();
blinking();
lit();
blinking();
lit();
lit();
wait();
delay(3000);
}
VS Codeで開くと,アイコンからArduinoのファイルであることが分かりました.コードを読み進めていくと,定義されている関数はそれぞれ
に対応しているようです.loop関数内の処理をモールス信号に変換すると以下のようになりました:
. -. .--- ----- -.-- .... .- .-. -.. .-- .- .-. . -.-.--
Morse Decoderで復号するとフラグを入手できました.
フラグ:TsukuCTF{ENJ0YHARDWARE!}
筑紫くん「素日華の誕生日プレゼントに彼女の好きな星座を基板に入れたけど気づいてくれるかな~」
フラグは星座を表す英単語大文字で答えてください。例えば星座が仔犬座の場合はTsukuCTF{CANIS MINOR}、獅子座の場合はTsukuCTF{LEO}となります。
※この問題は基盤設計ソフトが手元ない場合でも解くことが可能です。
以下のようなファイルが圧縮されたZIPファイルが配布されました:
ブラウザで「pcb viewer online」と検索するとALTIUM 365 VIEWERというサイトを発見.圧縮されていたファイルの全てを投げると以下のような画像が表示されました:
これは白鳥座です.白鳥座の英語名を調べるとフラグを入手できました.
フラグ:TsukuCTF{CYGNUS}