pr0xy’s blog

文章になってないことが多いです。メモです

TsukuCTF 2022 writeup

TsukuCTF 2022にチームDCDCで参加し3位でした。
OSINT力はそこまでないのですが、普段出すことのできないOSINT力を発揮できるTsukuCTFはとても楽しかったです。

result1

[Tushkushi] Welcome

Tushkushi 2022のDiscordサーバの🚩-welcome-to-tsukuctfチャンネルにフラグがありました

Welcome

[OSINT] inuyama082

配布画像
愛知県犬山市のどこかの店で撮影した一枚の画像から、メニュー名を当てる問題です。

店名は分からないけど抹茶の画像から犬山市の抹茶屋さんであることは予想できたので、"犬山市 抹茶"とGoogle検索し画像を眺めました。

犬山カフェよあけや というお店に行ったブログ記事の写真が配布画像と似ていたので、犬山カフェよあけやのメニューを調べました。

メニューを一通り調べた結果、答えはTsukuCTF22{和チーズケーキ ver.煎茶パウダー}でした。


検索結果を見ると犬山市には抹茶屋などお茶に関係する店が多いことが気になり犬山市とお茶の関係について調べると、犬山城下有楽苑にある如庵という茶室が 国宝茶席三名席であったりと、犬山市はお茶の歴史がある地域なのだと勉強になりました。 osintしている途中で雑学知識が増えていくのはosintの魅力だなぁと思いました。

[OSINT] station

配布画像
撮影場所の駅の名前を当てる問題です。

東豊線という文字と写真の雰囲気から札幌市の地下鉄の駅だと分かります。 札幌市の地下鉄

https://www.city.sapporo.jp/st/route_konaizu/images/subwayrosenzu3.jpg

は、南北線東西線東豊線と3つの路線があるらしいのですが、東豊線には女性専用車両がないそうなので、東豊線の駅は除外できまた。また、youtube札幌市営地下鉄の動画を見たところ、飛び込み防止柵の黄色は東西線を表していることが分かったので東西線の駅と絞れました。

東西線の駅の路線図を見ながらもう一度画像を見てると、画像中の柱の案内は西11丁目の新さっぽろ方面へ行く人向けの案内ではないかと気づきました。
撮影場所が西11丁目駅だとすると、新さっぽろ方面の次の駅は南北線東豊線も通っている大通駅であり南北線東豊線の文字が書いてあることに納得できます。

答えはTsukuCTF22{西11丁目}でした。

[OSINT] Gorgeous Interior Bus

配布画像
撮影場所に最も近い交差点の名前を当てる問題です。

バス先頭のモニタを見ると次の次の停車駅は〜スパあたみ駅であることが分かります。
Google検索はサジェストが得意なので"スパあたみ"で検索すると、マリンスパあたみという建物があることが分かりました。マリンスパあたみの近くにはバス停があるのでしょう。

このバスは豪華なので熱海駅は経由してるだろうと思い、熱海駅からマリンスパあたみへの行き方を調べると、このバスは熱海駅→〜→銀座→親水公園→マリンスパあたみ のルートのバスと分かりました。なのでこのバスの次の停車駅は銀座のようです。
Google mapで静岡県の銀座付近の交差点を調べると、東海岸町交差点という交差点がありました。

答えはTsukuCTF22{東海岸町}でした。

[OSINT] Flash

マイコンフラッシュメモリから読み出したデータから、プログラムが動いていたホテル名と部屋番号を特定する問題です。

最初にrand0mさん(@crypt_3n)がデータの中のapa-316-2428という怪しい文字列を見つけてくれました。 アパホテルは部屋ごとにSSIDが分けられていることを聞いたことがあったので、この文字列に部屋番号が含まれていると思いました。
数字で管理したい人って色々な物を数字で管理するよな(偏見)と思い、アパホテルの建物ごとに番号が与えられてないかと調べると、アパホテルは建物ごとに3桁の数字がNo.数字という形で割り当てられていることが分かりました。
site:www.apahotel.com "No. 316"などとGoogle検索すると、No. 316はアパホテル&リゾート〈両国駅タワー〉だそうです。
部屋番号は2428であってくれと思いながら、答えを提出すると

答えはTsukuCTF22{アパホテル&リゾート〈両国駅タワー〉_2428}で正解でした。

[OSINT] Bus POWER

撮影場所付近の交差点の名前を当てる問題です。

配布画像

自分は京都に住んだことがあったので、バスの先頭の座席が使用禁止であることやバスの運賃、道路の雰囲気から京都市内で撮影された写真であることがすぐに分かりました。
また、この通りは歩いたこともあり今出川通の雰囲気を感じ取れたので、Google mapのストリートビュー今出川通を歩きました。
信号機や画像右端に写っているクロネコヤマトの看板を目安に探していると、

答えはTsukuCTF22{千本今出川}と分かりました。

[OSINT] what_time_is_it

手前の電車の発車時刻を当てる問題です。

配布画像

この問題はv1enettaさんと考えて解いてました。

まず、赤い電車JR四国の特急うずしおであることはすぐに分かりました。
また、特急うずしおの停車駅とGoogle Mapの3Dビューを使うと、この画像はJR四国徳島駅の2番ホームから撮影されたものだと分かりました。

次に、徳島駅の時刻表からこの画像の特急うずしおの発車時刻を特定するのですが、その前にやっておかなければならないことがあります。
それは時刻表の特定です。 鉄道会社は、鉄道の時刻表を顧客の需要や収益を基にダイヤを改正(時刻表を変更)をすることがあります。 このことから、まずは画像が撮影された年月をおおよそ特定し時刻表を手にいれた後、(その頃の車両に関する公式の資料や鉄道有識者が収集したデータから)電車の発車時刻を特定します。

画像の手前の方が半ズボンを履いていたり木の緑の感じから撮影時期は夏です。また、向かいのホームにマスクした方が元気よく歩いてる姿が見えるのでコロナ期以降の2020年夏 or 2021年夏 or 2022年夏 と予想できます。
2020年夏はコロナが未知のウイルスと恐れられていた時期で2021年夏は緊急事態宣言が発令されている時期なので、消去法により2022年夏に撮影されたと予想しました。

2022年夏の徳島駅の時刻表は、2022年3月12日に改定されて現在も使われているこのページのものです。
画像は手前から2番線、3番線、4番線と3本の電車が並んでます。数字が蜜に並んでいない時刻表を見ると分かるように、徳島駅においてこのように電車が3本並んでいるのはかなり珍しい時間帯です。

なので、時刻表から2番線、3番線、4番線の電車の発車時刻が近い組み合わせを探すと次のような組み合わせが見つかりました。

2番線:15:23発 (うずしお20号)
3番線:15:30発
4番線:15:30発

Twitterうずしお20号についての投稿を検索すると、このツイートこのツイートのように、徳島駅うずしお20号が発車準備をしている時間帯に3本の電車が並んでいることを確認できました。

答えはTsukuCTF22{15:23}でした。


電車についてたくさん調べていると鉄道オタクになりかけました。 時刻表に車両番号書いてほしいと思いました😥

[OSINT] uTSUKUSHIi

写真に写っている猫の誕生日を当てる問題です。

配布画像
まず、この画像を見て気づいた点を出しました。

  • この猫は猫カフェなどの店で飼ってる猫だろう(日当たりが良く、部屋に広さを感じて部屋が高そうなので )

  • 猫が座っている丸い台がオシャレでかわいい(リビングに丸い台置きますか?店なのでしょう)

  • 黄色いソファのようなものが置いてある(角が傷が付いてパッチを当てたのか分からないが角の色が違う)

  • 鼻の根本が少し黒い(猫カフェの猫の鼻はピンク色していることが多そうだったので特徴的だと思った)

  • 右耳が切れている(喧嘩したのかな?)

  • この猫はかわいい(かわいい猫なので見つけやすいはず...)

これらの特徴から猫カフェについて調べていると、猫カフェMOCHAという日本全国に展開している猫カフェの店舗は丸いオブジェクトをたくさん使っていて写真と雰囲気が似ていると思いました。
次に、猫カフェMOCHAのホームページには全ての猫の名前と写真と誕生日が乗っていたので、全店舗の全ての猫と比較しました(1回目😹)。
配布画像の猫と見比べ続けた結果、(本当はいたのですが見逃していて)猫を見つけることができませんでした。

そこで、Google検索で猫カフェ 黄色 ソファと調べていると、このブログに写っているソファの黄色の変色具合が問題画像と似ていることに気づき、撮影場所は猫カフェMOCHA京都河原町店ではないか?と考えました。

もう一度猫カフェMOCHA京都河原町店の猫を注意深く見てみる(2回目)と、問題の猫はそっくす君と気づくことができました。

https://catmocha.jp/images/cat/kawaramachi/41/A87B4CB0-1F68-4FA1-ADED-4456FC2A7A6D.jpeg
そっくす君の誕生日をを入力すると、
答えはTsukuCTF22{2021/09/16}で正解でした。

[Reversing] GrandpaMemory

PDP-11のプログラムファイルが与えられて計算結果を答えるという問題です。

$ file ./a.out
a.out: PDP-11 old overlay

配布されたファイルはPDP-11のプログラムで、PDP-11何も分からなんと思ったのですがファイルサイズがたった52byteだったので解けそう(読み切れそう)だと思いました。

まずPDP-11の逆アセンブラを探すと、https://github.com/caldwell/pdp11dasmが見つかりました。
これを使ってファイルのプログラムの部分を逆アセンブルしたものが以下になります。

000014: 005001                  clr    r1            ; ..
000016: 005002                  clr    r2            ; ..
000020: 005201                  inc    r1            ; ..
000022: 005202                  inc    r2            ; ..
000024: 006301                  asl    r1            ; A.
000026: 006301                  asl    r1            ; A.
000030: 006301                  asl    r1            ; A.
000032: 006301                  asl    r1            ; A.
000034: 006302                  asl    r2            ; B.
000036: 060102                  add    r1,r2            ; B`
000040: 000777                  br    40            ; ..

wikipediaのPDP-11の命令セットについての説明を見ながら逆アセンブル結果を読むと、計算結果は18になることが分かりました。

答えはTsukuCTF22{18}でした。