🤿

DIVER OSINT CTF (2024) Writeup

2024/06/17に公開

はじめに

https://ctfd.diverctf.org/

本記事では、私が先日まで参加していたDIVER OSINT CTFについてのWriteupを記述します。
今回のDIVER OSINT CTFでは、pinjaチームにゲストメンバーとして参加し、8位でした!
チームメンバーのluminさん、Tokina*Himitsuさん、awamoriさん、ykameさん、yu1kさんに心から感謝を申し上げます。

この記事に関しては、チームメンバーの方に許可はとっていますが、チームとしてのWriteupではなく、私個人のWriteupであることをご承知の上、ご覧ください。
私視点によるものであるため、情報の抜け落ちが発生している可能性が高いです。

今回の記事では、以下のセクションに分けて振り返ります。

  • 私がフラグを提出して正解した問題
  • チームメンバーの方がフラグを提出して正解した問題

なお、「私がフラグを提出して正解した問題」ですが、今回のCTF期間中は全員でDiscordのボイスチャンネルに入り、全員と相談しながら解いたため、私一人の力で解いたわけでなくチーム全体で解いた問題です。

私がフラグを提出して正解した問題

正解した順に記述しています。

introduction/ad_directiare (Difficulty: introduction, 79 Solve)

この名刺の人物が、東京出張時に食べた昼ご飯の値段を答えよ。
Flag形式: Diver24{値段}
1000円の場合、Flagは Diver24{1000} となります。
Answer the price of the lunch this person on the business card had on a business trip to Tokyo.
Flag format: Diver24{price}
If it is 1000 JPY, the flag should be Diver24{1000}

画像にGMailのアドレスが写っているので、一先ずEpieosにかけることから始めた。

Google Mapsを見るとクチコミを投稿しており、東京での昼ご飯かつ値段「4400」が書かれているため、それが答えであると判断。正解だった。

フラグ: Diver24{4400}

introduction/dream (Difficulty: introduction, 255 Solve)

画像に写っているパイプオルガンがある施設の郵便番号を答えなさい。
Flag形式: Diver24{123-4567}
Give the postal code of the facility with the pipe organ shown in the image.
Flag format: Diver24{123-4567}

画像をGoogle Lensにかけると、以下の記事が引っかかる。
https://ameblo.jp/jissi/entry-12316645389.html
「ポップタウン住道 オペラパーク」にあるパイプオルガンと書道作品だとわかったので、「ポップタウン住道 オペラパーク」を検索して、郵便番号を取得。

フラグ: Diver24{574-0046}

introduction/serial (Difficulty: introduction, 223 Solve)

これらの動画の背景に映っている航空機のシリアル番号は何か? シリアル番号が123456の場合、Flagは Diver24{123456} となる。
What is the serial number of the aircraft in the background of these videos? If the serial number is 123456, the flag will be Diver24{123456}.

動画に、「JA222A」と書かれており、JA222Aが答えかなと思って提出すると間違いだった。
航空機のシリアル番号と機体番号の違いを把握してなかったので、チームメンバーの皆さんに訊いて、luminさんやyu1kさんに教えてもらい、シリアル番号情報を取得。
シリアル番号自体は、以下のWebページに公開されていた。
https://www.airfleets.net/ficheapp/plane-a320-9580.htm

フラグ: Diver24{9580}

military/osprey1 (Difficulty: easy, 203 Solve)

2023年11月29日、アメリカ軍のオスプレイ(V-22)が日本の屋久島沖で墜落した。この機体の番号と、墜落時のコールサインは何か。
Flag形式: Diver24{XX-XXXX_CALLSIGN}
たとえば機体登録番号が01-2345、コールサインがCALL01の場合、Flagは Diver24{01-2345_CALL01} となる。
この事故に関する問題は本CTFにおいて3問あります。正解することで1問ずつアンロックされます。
On 29 November 2023, a US military Osprey (V-22) crashed off Yakushima Island, Japan. What is the number of this aircraft and what was its call sign at the time of the crash?
Flag format: Diver24{XX-XXXX_CALLSIGN}
For example, if the aircraft registration number is 01-2345 and the callsign is CALL01, the flag should be Diver24{01-2345_CALL01}.
There are three challenges on this accident in this CTF. Each challenges is unlocked by answering it correctly.

Wikipediaより、「CV-22」という型番のオスプレイが墜落したことがわかったが、機体登録番号とコールサインがわからず。
チームメンバーの皆さんに相談したところ、luminさんがドンピシャの情報を記入しているWebページを発見してくださりました。
https://aviation-safety.net/wikibase/348462
このWebページに書かれている「Registration: 12-0065」と「call sign "Gundam 22"」が答え。

フラグ: Diver24{12-0065_Gundam 22}

introduction/chain (Difficulty: introduction, 110 Solve)

この看板の店の電話番号を答えよ。
Flag形式: Diver24{0123456789}
注意: 電話を掛けてはならない。Web上の情報から調査せよ。
Answer the phone number of this restaurant.
Flag format: Diver24{0123456789} Note: DO NOT MAKE ACTUAL PHONE CALL. Search on the web.

Unlock Hint for 0 points
As the flag format shows, it should be the Japanese domestic phone number format.

他のチームメンバーの方が鳥貴族の店舗をしらみ潰しに調べていたが、見つからないということで後回しになっていた。
画像より、どこかの建物の4階にある鳥貴族であることがわかるので、https://map.torikizoku.co.jp/storeの店舗検索のキーワードに「4階」や「4F」で検索し、ストリートビューで外観を確認する作業を繰り返していたところ、「鳥貴族 広尾店」であることがわかった。
https://www.google.com/maps/place/鳥貴族+広尾店/@35.6504368,139.7213411,3a,75y,130.89h,95.53t/data=!3m6!1e1!3m4!1sfVfin_0-FQnLIbVc-ZjfRQ!2e0!7i16384!8i8192!4m16!1m8!3m7!1s0x60188b6d59e15d1d:0x5d89539e2e29e2d5!2z6bOl6LK05pePIOW6g-WwvuW6lw!8m2!3d35.6503596!4d139.7213443!10e5!16s%2Fg%2F11b76kdr0j!3m6!1s0x60188b6d59e15d1d:0x5d89539e2e29e2d5!8m2!3d35.6503596!4d139.7213443!10e5!16s%2Fg%2F11b76kdr0j?hl=ja&coh=205409&entry=ttu

以下のWebページに書かれている電話番号が答え。
https://map.torikizoku.co.jp/store/373

フラグ: Diver24{03-6459-3392}

最初の店舗検索時に見つからなかったのは、閉店した店舗は除外していたからのようだ。

geo/chiban (Difficulty: medium, 90 Solve)

画像の中央に写っている道路の地番は何か。
たとえば住所が 仙台市宮城野区二十人町 303-8 の場合、Flagは Diver24{303-8} となる。
また、地番には数字だけでなく漢字が含まれることもある。その場合は漢字表記のまま解答せよ。
What is the land lot number (地番, chiban) of the road in centre of image? Answer in Japanese.
For examle, if the address is 仙台市宮城野区二十人町 303-8, the flag should be Diver24{303-8}.
Also, some land lot number includes not only numbers but also Kanji (Chinese characters). In that case, please answer as is in Kanji.

ykameさんが、Google Mapで撮影場所の位置を特定。
https://www.google.com/maps/@34.8161647,135.5790562,3a,75y,110.55h,90t/data=!3m7!1e1!3m5!1sopm15pmE7ZKOtrUqIRTGAw!2e0!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fpanoid%3Dopm15pmE7ZKOtrUqIRTGAw%26cb_client%3Dmaps_sv.tactile.gps%26w%3D203%26h%3D100%26yaw%3D14.726607%26pitch%3D0%26thumbfov%3D100!7i16384!8i8192?coh=205409&entry=ttu

Tokina*Himitsuさんやyu1kさんが、地番検索サービスを発見。
https://chiban-kensaku.com/


上記より、「双葉町筆界未定値-6」が答え。

フラグ: Diver24{双葉町筆界未定値-6}

他のチームメンバーの方も答えを見つけてフラグの提出を行なっていたが、フラグフォーマットに不備があり、Incorrect判定になっていたようだ。

misc/wumpus (Difficulty: medium, 61 Solve)

とあるDiscordサーバにFlagが投稿されたぞ!
本問に限って、ターゲットに接触を試みても大丈夫だ。
Flag has been posted on a Discord server!
Only for this challenge, it is okay to attempt to contact the target.

写真にはブラウザが写っており、アドレスバーにはhttps://discord.com/channels/1244302408402735114/1244302408402735117と書かれており、右下にQRコードの一部がある。

当初は、他のチームメンバーの方がQRコードのデコード問題の可能性を疑い、QRコードについて調べていたが、手掛かりが見つからず止まっていた。
再度、ykameさんと一緒にこの問題に取り組んでいたところ、DiscordのURLの仕組みが以下であることがわかった。

そこで、サーバーIDで検索すると、以下の検索結果だった。

Discord Serversというよくわからないサービスだが、アクセスしてみたところ、「flag」という名のサーバーであり、これは問題の画像と一致する。

joinしてみて、generalチャンネルの冒頭のメッセージを見ると、QRコードがある。

QRコードを読み込むと、Diver24{Discord_1s_m0s7_u5efu1_t001}と表示され、これが答え。

フラグ: Diver24{Discord_1s_m0s7_u5efu1_t001}

チームメンバーの方がフラグを提出して正解した問題

こちらも、「私がフラグを提出して正解した問題」と同様に正解した順に記述しています。

welcome/welcome (Difficulty: welcome, 453 Solve)

DIVER OSINT CTFへようこそ!
ルールのページからFlagを見つけて入力してください。
正解すると、ほかの問題がアンロックされます!
Welcome to the DIVER OSINT CTF!
Please find the flag on the rules page and enter it here.
You will see the other challenges when you submit the correct flag.

https://ctfd.diverctf.org/rules
より、

"Welcome" のFlagはこちらです!
Diver24{ganbarou!}

と書かれており、これが答え。

フラグ: Diver24{ganbarou!} (ykameさんが提出)

crypto/leak (Difficulty: easy, 211 Solve)

先月、日本の会社で大規模なBTCの不正流出が起きた。
流出先となっているウォレットアドレスを答えよ。
Flag形式: Diver24{ウォレットアドレス}
Last month, there was a large-scale unauthorized outflow of BTC from a Japanese company.
Identify the wallet address where the outflow went.
Flag format: Diver24{wallet address}

luminさんがすぐに発見。
https://www.blockchain.com/explorer/addresses/btc/1B6rJRfjTXwEy36SCs5zofGMmdv2kdZw7P
より、「1B6rJRfjTXwEy36SCs5zofGMmdv2kdZw7P」が答え。

フラグ: Diver24{1B6rJRfjTXwEy36SCs5zofGMmdv2kdZw7P} (luminさんが提出)

introduction/office (Difficulty: introduction, 229 Solve)

ファイルから得られるFlagを入力してください。
Input the flag obtained from the file.

mudai.odtファイルが添付されている。
最初、yu1kさんや私がこの問題を解いていたが、odtファイルをただ開いただけではフラグが見つからなかった。

わからなかったので、チームメンバーの皆さんに訊いて、luminさんが解答。
mudai.odtをunzipすると、Thumbnails/thumbnail.pngにフラグが載っている。

フラグ: Diver24{World Ocean Day} (luminさんが提出)

geo/imagetrack (Difficulty: easy, 146 Solve)

画像の撮影された郷土料理屋の店名を答えよ。
Flag形式: Diver24{店名}
Please provide the name of the local cuisine restaurant where the image was taken.
Flag format: Diver24{restaurant name}

awamoriさんが担当。
Exifを確認すると、地図情報が埋め込まれている。

緯度、軽度情報で再度Google Mapを検索すると、「シャトー北野坂ビル」であることがわかる。

「シャトー北野坂ビル 郷土料理屋」で検索すると、一番最初に引っかかる「郷土料理 からす」が答え。

フラグ: Diver24{郷土料理 からす} (awamoriさんが提出)

introduction/246 (Difficulty: introduction, 143 Solve)

画像が撮影された場所から最も近い交差点名を答えよ。
Flag形式: Diver24{交差点名}
What is the name of the intersection closest to where the image was taken?
Flag format: Diver24{intersection name}

Tokina*Himitsuさんと私が当初取り組んでいたが、一旦他の問題に取り組むことになり、yu1kさんが担当。
画像を拡大すると、ナンバープレートに「下関」と書いていることがわかる。
また、画像奥に橋が写っているので、下関にある橋をストリートビューで確認しながら、撮影場所を探索。
https://www.google.com/maps/@33.9726329,130.9686099,3a,75y,140.87h,76.21t/data=!3m6!1e1!3m4!1svKWEGFKC3aFQkJunhLfiWA!2e0!7i16384!8i8192?coh=205409&entry=ttu
撮影場所を発見したので、近くの交差点を探し、「前田」であることがわかった。
https://www.google.com/maps/@33.9724515,130.9682163,3a,90y,204.51h,74.91t/data=!3m6!1e1!3m4!1s4BCLL9yV1yTTOSJuI0PvoQ!2e0!7i16384!8i8192?coh=205409&entry=ttu

フラグ: Diver24{前田} (yu1kさんが提出)

個人的なメモとして、交差道路標識の見分け方を学んだ(免許取得時に勉強したかもしれないけど、記憶から抜け落ちていた)。
https://www.skr.mlit.go.jp/road/hyousiki/h_annai/guidesign/crossing.html

transportation/youtuber (Difficulty: medium, 86 Solve)

2023年、あるYouTuberが日本で無賃乗車や無銭飲食を行い、その様子を投稿したことで問題となった。
彼は日本である列車に無賃乗車をしていたところ、九州地方のある駅で一度捕まったが、そのまま逃走して別の列車に再び無賃乗車をした。
彼が捕まった駅と、乗り継いだ列車の列車番号を教えてほしい。なお、列車番号は時刻表に掲載されている形式で回答せよ。
Flag形式: Diver24{駅名_列車番号}
例えば、折尾駅で捕まり、456Mという列車に乗り換えた場合、Diver24{折尾_456M} となる。
In 2023, a YouTuber became a problem when he posted a video of himself and his mates riding for free and eating for free in Japan.
He was once caught riding a train in Japan without paying at a station in the Kyushu region, but he escaped and ride another train without paying again.
I would like to know the station where he was caught and the number of the train to which he changed. Please answer with the train number (列車番号) in the format shown on the timetable (時刻表).
Flag Format: Diver24{station name_train number}
For example, if he was caught at Orio Station and ride 456M train, the flag should be Diver24{Orio_456M}.

Unlock Hint for 0 points
列車番号を正規表現で表すと次の通りである / Regex of train numbers : \d{1,4}[A-Z]

awamoriさんが担当。
YouTuberに関する記事は以下。
https://news.yahoo.co.jp/articles/bc10510d5fed2d71ed80c26b7c6b64eb80aefc16

同氏は諫早駅から西九州新幹線に乗車し、乗務員に乗車券の提示を求められると体調不良を訴え、隙を見て逃走した。有人改札を突破し、新鳥栖駅を経由して岡山駅まで乗車したとみられる。

より、駅名は「新鳥栖」で、YouTuberの名前が「Fidias」であることがわかる。

「Fidias」が投稿した動画はWayback Machine上に残っており、その動画を見ていくと「さくら572」に乗車したことがわかる。
https://web.archive.org/web/20231024115315/https://www.youtube.com/watch?v=Dg_TKW3sS1U

JRおでかけネットで検索すると、列車番号が「572A」であることがわかる。
https://timetable.jr-odekake.net/train-timetable/104121?date=20240217

フラグ: Diver24{新鳥栖_572A} (awamoriさんが提出)

misc/number (Difficulty: easy, 176 Solve)

この車両の持ち主に連絡を取りたい。電話番号を調べてもらえないだろうか。
Flag形式: Diver24{0123456789}
注意: 実際に電話を掛けてはならない。
I would like to contact the administrator of this vehicle. Could you please find out their telephone number?
Flag Format: Diver24{0123456789}
CAUTION: DO NOT MAKE AN ACTUAL PHONECALL

awamoriさんが担当。
画像中の車のナンバープレートに注目する。

外交官ナンバープレートであることがわかる。
外交官ナンバープレートの番号一覧は以下のWebページに記載されている。
https://warmheart0159.hatenablog.com/entry/2017/06/06/162406

49 クエート. Kuwait

https://www.google.com/maps/place/駐日クウェート大使館/@35.6453705,139.7389993,17z/data=!3m1!4b1!4m6!3m5!1s0x60188bae3cb8af4d:0x57ccac33d7b449a0!8m2!3d35.6453662!4d139.7415742!16s%2Fg%2F122gwq88?entry=ttu
東京にあるクウェートの大使館はここだけ。
したがって、答えは「0334550361」。

フラグ: Diver24{0334550361} (awamoriさんが提出)

history/promotor (Difficulty: easy, 90 Solve)

画像に写っている池沼を開拓した発起人の父親の命日を答えよ。
Flag形式: Diver24{yyyy/MM/dd}
The pond in the image was cultivated by a certain person who initiated the development in 1628 (Kan'ei 5, 寛永5年). Give the date of death of this person's father.
Flag Format: Diver24{yyyy/MM/dd}
Note: "Kan'ei" (寛永) is one of Japanese era name. (wikipedia)

当初はykameさんが担当、最終的にはawamoriさんが解答。
画像の一部をGoogle Lensにかければ、候補として「入鹿池」が引っかかる。

ストリートビューで確認、「入鹿池」であっていることがわかる。
https://www.google.com/maps/@35.334787,136.994412,3a,87.1y,274.46h,55.18t/data=!3m11!1e1!3m9!1sAF1QipP_U7BnStcMrpt7fNmLSYNCZqV-fP3608ZPVALX!2e10!3e11!6shttps:%2F%2Flh5.googleusercontent.com%2Fp%2FAF1QipP_U7BnStcMrpt7fNmLSYNCZqV-fP3608ZPVALX%3Dw203-h100-k-no-pi-10-ya80-ro0-fo100!7i8192!8i4096!9m2!1b1!2i30?coh=205409&entry=ttu
入鹿池のWikipediaより、「江崎善左衛門了也」の父である「江崎善左衛門宗度」の命日を答える必要がある。
だが、入鹿池のWikipediaだけでは、1627年に亡くなったことがわかるだけで、月日が不明。
https://ja.wikipedia.org/wiki/入鹿池
「江崎善左衛門宗度 1627」で検索すると、「徳川義直と六人衆」という文献が引っかかる。
https://www.jstage.jst.go.jp/article/jjsidre1965/49/7/49_7_630/_pdf

義直の知遇を受け,寛永4年(1627)11月13日に病没した。

より、1627/11/13が命日であることがわかる。

フラグ: Diver24{1627/11/13} (awamoriさんが提出)

geo/island (Difficulty: medium, 24 Solve)

「四方ぎり島」という名前の島における、最高地点の標高を整数(メートル)で答えよ。
Answer the highest elevation of the island named "四方ぎり島" in integer and metric.
Flag例 / Flag example: Diver24{3776}

当初はyu1kさんが担当、最終的にはluminさんが解答。
検索し、南極大陸にある島であることがわかる。
https://marineregions.org/gazetteer.php?p=details&id=10095
https://de.wikipedia.org/wiki/Yomogiri_Zima

国土地理院が出している地理院地図に載っており、最高地点の標高は「18m」であることがわかる。
https://maps.gsi.go.jp/#14/-69.733230/38.999619/&ls=southpole_25000&disp=1&vs=c1g1j0h0k0l0u0t0z0r0s0m0f1&d=m

フラグ: Diver24{18} (luminさんが提出)

misc/timestamp (Difficulty: easy, 50 Solve)

"53" と塗装されている航空機の写真が撮影された日時を答えよ。
https://twitter.com/jointstaffpa/status/1767515646286549226
Flag形式: Diver24{YYYY-MM-DDThh:mm}
例えば2024年4月1日13時45分に撮影された場合、Diver24{2024-04-01T13:45} となる。
Answer the date and time the photograph of the aircraft painted “53” was taken.
https://twitter.com/jointstaffpa/status/1767515646286549226
Flag format: Diver24{YYYY-MM-DDThh:mm}
For example, if the photo was taken at 13:45 on 1 April 2024, the flag should be Diver24{2024-04-01T13:45}.

Unlock Hint for 0 points
タイムゾーンを変換する必要はない。/ You don't need to convert time zones.

yu1kさんが担当。

防衛省が公開している以下のPDFファイルについて、画像抽出やPDF編集を行えば、撮影時のタイムスタンプを取得できる。
https://www.mod.go.jp/js/pdf/2024/p20240312_01.pdf

フラグ: Diver24{2024-03-12T15:33} (yu1kさんが提出)

military/osprey2 (Difficulty: easy, 114 Solve)

2024年2月15日、ある米軍基地でこの事故に関する追悼式典が実施された。16:46:37ごろ、その式典はどこで実施されていたか。
OpenStreetMapのWay番号で答えよ。
Flag例: Diver24{123456789}
On 15 February 2024, a memorial service concerning this accident was held at a US military base. At approximately 16:46:37, where was the ceremony taking place?
Answer using the OpenStreetMap Way number.
Flag example: Diver24{123456789}

Unlock Hint for 0 points
基地全体ではなく、基地内の特定の区画・地点を示してください。 / Not an entire air base. Plase designate the specific area/point in the airbase

military/osprey1から続く連続問。
当初は私やluminさんが担当、最終的にはTokina*Himitsuさんが解答。
検索すると、以下の記事がヒットする。
https://www.stripes.com/branches/air_force/2024-02-15/osprey-crash-japan-yokota-service-13010379.html

A half-hour before sunset, approximately 600 people, mostly airmen in uniform, gathered for a brief retreat ceremony on the athletic field outside Yokota’s Samurai Fitness Center.
The 5 p.m. assembly faced flags outside the wing headquarters building as the Japanese and U.S. national anthems, followed by taps, played across the base on the public address system.

より、16:46:37ごろには、横田基地にあるSamurai Fitness Centerの外にある陸上競技場で式典が開催されていたことがわかる。
https://www.google.com/maps/place/Yokota+Training+Field/@35.7408997,139.3422455,18z/data=!4m6!3m5!1s0x601921c584119919:0x627d7fd03540a861!8m2!3d35.7414693!4d139.3431639!16s%2Fg%2F11qy9_vdq4?entry=ttu
OpenStreetMapで「35.7415405,139.3426674」を検索し、ウェイ: 810021665が答えだと思って提出したが、正解にならず。
一旦忘れて他の問題に挑戦していたが、Tokina*Himitsuさんがウェイ: 810021666を発見し、無事正解に。

フラグ: Diver24{810021666} (Tokina*Himitsuさんが提出)

misc/label (Difficulty: medium, 62 Solve)

この荷物の宛先として考えられる施設の郵便番号を教えてほしい。
例えば在日アメリカ大使館が答えの場合、Flagは Diver24{107-8420} となる。
Please tell me the postal code of the facility as a likely destination for this package.
If it is the US embassy in Japan, the flag will be Diver24{107-8420}.

luminさんがすぐに解答。
rMQRコードを読めるリーダー(クルクルなど)で読み込めばOK。
rMQRコードの内容は以下。

SHIPMENT ADDRESS:
Baba-cho 14-1, Tsuruoka City, Yamagata, Japan

上記の住所で検索すると、「慶應義塾大学鶴岡タウンキャンパス」が引っかかる。
https://www.ttck.keio.ac.jp/en/contact/index.html
「慶應義塾大学鶴岡タウンキャンパス」の郵便番号は、「997-0035」。

フラグ: Diver24{997-0035} (luminさんが提出)

geo/championships (Difficulty: medium, 40 Solve)

2010年10月、この場所には大会の広告が貼られていた。その大会の優勝者のニックネームを答えよ。
Flag形式: Diver24{優勝者のニックネーム}
In October 2010, an advertisement for a competition was placed at this location. Give the nickname of the winner of that tournament.
Flag format: Diver24{winner's nickname}.

当初はawamoriさんが担当、最終的にはykameさんが解答。
画像中の文字、「光華商場」であることがわかる。
https://ja.wikipedia.org/wiki/光華商場
https://www.google.com/maps/place/光華数位新天地/@25.0452719,121.5294582,17z/data=!4m7!3m6!1s0x3442a9634439ce7d:0x4cd6385059c7f187!8m2!3d25.0452719!4d121.5320331!15sCgzlhYnoj6_llYbloLSSARFlbGVjdHJvbmljc19zdG9yZeABAA!16s%2Fm%2F02px8h1?entry=tts&g_ep=EgoyMDI0MDYxMS4wKgBIAVAD

Googleストリートビューを確認すると、2010年10月に撮影したデータが残っていることがわかったので、周辺を探索。

周辺を探索していると、以下の地点で広告が見つかる。
https://www.google.com/maps/@25.0447483,121.5315816,3a,45.3y,169.71h,91.14t/data=!3m7!1e1!3m5!1swBHMEQIP4Lu_oQS8wKWWgg!2e0!5s20101001T000000!7i13312!8i6656?coh=205409&entry=ttu

広告の「GIGABYTE GOOC 2010」について検索すると、以下のWebページが引っかかる。
https://overclocking-tv.com/content/news/6166/gooc-2010-worldwide-final-result/

The Show is over now and here is the result, congratulation to Matose, Stephenyeong and Speedtime.wing for there performances.

より、「Matose」が答え。

フラグ: Diver24{Matose} (ykameさんが提出)

geo/power (Difficulty: medium, 26 Solve)

写真右側に写っている送電線の運用容量値(単位: MW) はいくつだろうか。整数で答えよ。
なお、この写真は2024年に撮影されたものである。
Flag形式: Diver24{100}
What is the operational transmission capacity value (unit: MW) of the transmission line on the right-hand side of the picture? Answer in whole numbers.
Note that this photo was taken in 2024.
Flag Format: Diver24{100}

Unlock Hint for 0 points
"operational transmission capacity value" is "運用容量値" in Japanese

luminさんとTokina*Himitsuさん、私が取り組んでいたが、最終的にはluminさんが解答。
画像左に写っている車両が「サンダーバード」であることを特定。
サンダーバードの車窓映像をYouTubeで漁ったり、サンダーバードの走行区間をGoogleストリートビューを調べたりしながら、luminさんがGoogleストリートビューで撮影場所を特定。
https://www.google.com/maps/@34.9628481,135.7100398,3a,75y,168.87h,90.73t/data=!3m7!1e1!3m5!1swh-J6Lxbg5cmaNuFvidfzw!2e0!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fpanoid%3Dwh-J6Lxbg5cmaNuFvidfzw%26cb_client%3Dmaps_sv.share%26w%3D900%26h%3D600%26yaw%3D168.87225498141822%26pitch%3D-0.7288616563462682%26thumbfov%3D90!7i16384!8i8192?hl=ja&coh=205410&entry=ttu

鉄塔の管理会社が「関西電力配送電株式会社」であることがわかる。

https://10map.net/
を使って、Googleストリートビューで特定した箇所付近の鉄塔の情報をみると、「西院線(後区間) 61」の鉄塔であることがわかる。

関西電力配送電株式会社のWebページ上で「西院」を検索すると、以下のCSVが引っかかる。
https://www.kansai-td.co.jp/interchange/takusou/pdf/154kv_less_line.csv
CSVの内容より、西院線の運用容量値は「84(MW)」であることがわかる。

フラグ: Diver24{84} (luminさんが提出)

transportation/italy (Difficulty: medium, 23 Solve)

2023年10月27日、新潟大学に通う学生が「珍しいことにイタリアのヘリコプターがキャンパスの上空を通った」と話していた。
しかし、周囲からは「ヘリコプターは長距離を飛べない。イタリアから新潟に来られるわけがない」と一蹴されてしまった。
彼の主張を裏付けるため、以下のものを調べてほしい
ヘリコプターの保有者(社名)
キャンパス上空を通過した時刻(JST)と、そのときの時の気圧高度
Flag形式: Diver24{社名_hh:mm:ss(JST)_高度}
たとえば、"Diver"社のヘリが9:10:12(JST)に高度1000ftで通過した場合、Flagは Diver24{Diver_09:10:12_1000} となる。
On 27 October 2023, a student from Niigata University said "Unusually, an Italian helicopter passed over our campus".
However, those around him brushed it off, saying that helicopters cannot fly long distances. There is no way they could come to Niigata, Japan from Italy’.
To corroborate his claims, we would like you to look into the following information
Owner of the helicopter (company name)
Time of passage over the campus (in JST) and the barometric altitude at the time
Flag format: Diver24{company name_hh:mm:ss(JST)_altitude}
For example, on 9:10:12 JST ,the helicopter which is owned by the company named "Diver" passed over there in 1000ft, the flag will be Diver24{Diver_09:10:12_1000}

ykameさんとawamoriさん、yu1kさんが取り組んでおり、最終的にはyu1kさんが解答。
2023-10-27にイタリアやヘリについて言及していたポストを検索すると、以下の投稿が引っかかる。

AW169についてyu1kさんがFlightrader24で調べたところ、2023-10-27 13:45:50頃に高度1600ftで新潟大学上空を通過したことがわかった。
https://www.flightradar24.com/data/aircraft/i-lidi
秒数に不確定な要素があったので、何度か試して以下のフラグで通せた。

フラグ: Diver24{Alidaunia_13:45:50_1600} (yu1kさんが提出)

transportation/accident (Difficulty: medium, 28 Solve)

画像に映るバスと似たような車の観光バスが2023年に起こした事故の時刻と場所を探してください。
Flag形式は Diver24{時刻_場所} です。
時刻: 2000-01-23 01:23:45のような形式で、3秒の誤差が許容されます(現地時間)。
場所: 40.689N74.044Eのような形式で、小数第四位を切り捨てて表してください。
なお、時刻はバスが事故を起こしてから完全に停止した時刻を指します。
Flag例:
Diver24{2000-01-23 01:23:45_40.689N74.044E}
注意: この問題には交通事故に関連する情報が含まれています。
Find the time and location of the accident in 2023 caused by a tourist bus similar to the bus model shown in the image.
Flag format is Diver24{Time_Location} .
Time: it is in the form 2000-01-23 01:23:45 with a margin of error of 3 seconds allowed (local time).
Location: it is in the form 40.689N74.044E, rounded down to the fourth decimal place.
Note that the time refers to the time when the bus comes to a complete stop after the accident.
Flag example:
Diver24{2000-01-23 01:23:45_40.689N74.044E}
Warning: This challenge contains information relating to road accidents.

ykameさん、luminさん、yu1kさんが取り組んでおり、最終的にはyu1kさんが解答。
当初は、2023-06-18に北海道で発生した高速バスと大型トラックの衝突事故について追っていた。
https://www.asahi.com/articles/ASR6L6SNPR6LUTIL00F.html?iref=pc_photo_gallery_bottom
https://www.fnn.jp/articles/-/570205?display=full
しかしながら、秒数特定が困難だったため、他の事故の可能性を追うことにした。
また、問題の説明文について不明点があったので、チケットを発行して運営に質問した。
質問と回答の内容を以下に示す。

■モデルの定義について
これは自動車、特にバスの「モデル」を厳密に定義することが難しいことに由来します。(例えば同一車種でも世代が違う、シャシーとボディのメーカーが別であるなど)
厳密な車種・モデルの一致が求められている訳ではなく、ここは車両の外観で判断していただいてかまいません
■事故を「起こした」という表現について
日本語がもしかしたら分かりにくかったのかもしれません。「起こした」と言うのは加害者というわけではなく、ここでは単に事故に関与していることだけを指しています。
■観光バスなの?高速バスではないってことで良い?
最後の質問. そのバスの所有会社はWebサイトなどでは、現地の言葉で「観光バス」という表記をしています。

再度、ニュースについて調べて行った結果、以下の記事を発見。
https://isekai-video.com/3309.html
定点カメラの位置情報を載せているWebページも発見。
https://www.twipcam.com/cam/n3-s-263k+760

以下のフラグで正解。

フラグ: Diver24{2023-10-21 09:43:02_23.703N120.603E} (yu1kさんが提出)

military/osprey3 (Difficulty: medium, 24 Solve)

墜落した機体は2018年11月15日の夜、ある空港に駐機していたらしい。その地点の標高(フィート)を整数で答えよ。なお、各種データソースの時刻にズレはないと仮定してよい。また、空港に関する情報は最新のものを参照してよい(2018年時点のデータを用いる必要はない)。
Flag例: Diver24{250}
この"osprey3"がこのCTFにおけるオスプレイの事故に関する最後の問題です。
The crashed aircraft was apparently parked at some airport on the night of 15 November 2018. Give the elevation (in feet and integer) of that point. You can consider there are no discrepancies in the times of the various data sources. Also you can refer the latest information about the airport (no need to use data as of 2018).
Flag example: Diver24{250}
This "osprey3" is the last challenges about the Osprey crash in this CTF.

Unlock Hint for 0 points
空港全体の標高ではなく、駐機していた地点の標高である。 / Not an altitude of entire airport but an altitude of parking spot.

Unlock Hint for 0 points
変換、四捨五入などを行う必要はありません。問題文に合致した明確な数値を見つけることができます。 / No need to convert, round and so on. You will see an obvious number which matches the statement.

military/osprey1から始まりmilitary/osprey2を経て、最後のオスプレイ問題。
私やluminさん、yu1kさんが取り込んでおり、最終的にluminさんが解答。

「12-0065 2018-11-15」で検索すると、JetPhotosの以下のページがヒットする。
https://www.jetphotos.com/photo/9144357
2018-11-15の夜には、「Kraków John Paul II International Airport」にいたことがわかる。
https://en.wikipedia.org/wiki/Kraków_John_Paul_II_International_Airport
Wikipediaより「791 ft」かと思ったが、ヒントより空港全体の標高では間違い(一応、Diver24{791}で提出したが間違いだった)。

luminさんの調査により、「50° 4'35.34"N 19°47'41.43"E」付近で撮影されたものということがわかったが、標高が不明のままだった。
https://www.google.com/maps/place/50°04'35.3"N+19°47'41.4"E/@50.0783109,19.7861421,15.48z/data=!4m4!3m3!8m2!3d50.0764833!4d19.7948417?entry=ttu
luminさんが以下のサービスを見つけ、「764 ft」が答えと思い、フラグを提出したがIncorrect。
https://elevation.maplogs.com/

正確な資料に基づいて提出したのにIncorrectだったため、チケットを発行して運営に質問。

当該地点に対する公式の実測値が確認できる資料が存在します

という返答が返ってきたため、空港公式の資料があるのかもしれないと再度資料を捜索。
luminさんが以下のPDFを見つけ、「774 ft」であることが判明。
https://www.krakowairport.pl/storage/2021-01/ep-ad-2-epkk-1-1-1-en1-1611834393HArbS.pdf

フラグ: Diver24{774} (luminさんが提出)

geo/public_service (Difficulty: hard, 10 Solve)

ある男が「20年前の11月だったかな、この交差点について市に文句を付けてやったことがあるんだよ。最近の行政は酷いもんだがね、あの頃は良かったよ。」と言っていた。
彼は何を連絡したのだろうか。資料に記載されている通りの理由を答えよ。
Flag形式: Diver24{Something happend}
One man said, "I once complained to the city about this intersection, 20 years ago, I think it was November. The administration is terrible these days, but those were good days."
What did he contact them about? Answer why, as stated in the documents.
Flag Format: Diver24{Something happend}

Tokina*Himitsuさんとawamoriさんが取り組んでおり、最終的にawamoriさんが解答。
まずは、ストリートビューで位置を特定。
「111th Stと46 Aveの交差点」に関する市への文句だと考えられる。
https://www.google.com/maps/@40.7480821,-73.8540728,3a,75y,16.15h,82.32t/data=!3m8!1e1!3m6!1snUDif3q1IrjsAUrelqIxfg!2e0!5s20221001T000000!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fpanoid%3DnUDif3q1IrjsAUrelqIxfg%26cb_client%3Dmaps_sv.share%26w%3D900%26h%3D600%26yaw%3D16.153970643883497%26pitch%3D7.683277474223786%26thumbfov%3D90!7i16384!8i8192?coh=205409&entry=ttu
awamoriさんが、市民が市のサービスや情報を求めたり、苦情を報告したりするための窓口である「311サービス」の問い合わせ情報などがオープンデータになっていることを発見。
https://data.cityofnewyork.us/Social-Services/311-Service-Requests-for-2004/sqcr-6mww/about_data
Dataタブで以下のように設定すると、Unique Keyが「1219841」だけに定まり、Descriptor「Street Light Out」がフラグ。

フラグ: Diver24{Street Light Out} (awamoriさんが提出)

geo/construction (Difficulty: hard, 12 Solve)

あるアナリストによると、37.669, 120.691 付近に新たな施設が建設されたことが判明した。この施設の名称を答えよ(現地の公用語表記)。
例えば、韓国にある「青瓦台」が答えの場合、現地語表記を用いて Diver24{청와대} がFlagとなる。
One analyst found that a new facility was built in the vicinity of 37.669, 120.691. Give the name of this facility (in the local official language).
For example, if the answer is "Cheongwadae" in South Korea, the Flag is Diver24{청와대} using the local language notation.

luminさんとTokina*Himitsuさんが取り組んでおり、最終的にTokina*Himitsuさんが解答。
Google Mapsや百度地图(Baidu Maps)など色々な地図サービスを使用して調べていたが、分からず。Tokina*HimitsuさんがChatGPTに中国のストリートビューを提供するサービスについて尋ねたところ、高德地图(Gaode Maps, Amap)を紹介される。
Amapで該当箇所を調べると、「蓬莱通用机场(建设中)」と表示される。

「蓬莱通用机场(建设中)」から建設中をとった「蓬莱通用机场」が答え。

フラグ: Diver24{蓬莱通用机场} (Tokina*Himitsuさんが提出)

おわりに

私個人としては、4回目のOSINT CTF参加でした。
HEXA OSINT CTF V3(3人チーム)→APT Hunter(1人)→MEDILEAK OSINT CTF(1人)→DIVER OSINT CTF(6人チーム)と、チームで参加するのも久しぶりで、6人でワイワイとDiscordで話し合いながら取り組めたのは非常に良かったです。
CTF期間中はチームメンバーの皆さんの能力の高さに驚きながら、色々と学ばさせて頂きました。
チームメンバー間での情報共有の方法が個人的にはすごく良いなと思いました。
本当にありがとうございます。
私の今後のOSINTライフにとって、非常に重要な経験を得たような気がしています。

個人的な反省としては、「思い込みを捨てる」というのができていなかったなと思っています。
Xでもポストしたのですが、解けなかった問題の一つであるinvestigation_request/mapperにおいて、street.jpgのIPTCを見たときに、「Meta社関連のサービスだから、Facebook・Instagram・Threadsのどれかに違いない」と思い込んでしまい、ドツボにハマってしまいました。

MetaのWikipediaを見れば、フラグがあったMapillaryもブランドの一つとして書かれており、「Meta社ってFacebook・Instagram・Threads以外にもサービス展開してるのかな?」と思い込みを捨てて検索していれば、時間内に解けていた未来もあったのかなと思っています。

私個人の意見として、OSINTは「思い込みを捨てて、様々な情報から事実・真実を見つける」要素があると思っており、「思い込みを捨てる」というOSINTをやる上で重要なことができてなかったと反省しています(OSINT歴浅いので、間違っていたことを書いていたら申し訳ないです)。
この反省を肝に銘じて、今後もOSINTを続けていこうと思います。

最後に、今回非常に面白いCTFを実施・運営してくださったDIVER OSINT CTF運営の皆さん(ryo-aさん、xryuseixさん、shioさん、Ginnannmanさん、k4r45uさん)にお礼を申し上げたいと思います。
本当にありがとうございました!次回のDIVER OSINT CTF開催も期待しています!


P.S. 今後も、直近で以下のOSINT CTFの開催が予告されています。
みんなで参加して、日本のOSINTコミュニティを盛り上げていきましょう!

  • HACK'OSINT CTF 2024
    • https://ctf.hackolyte.fr/
    • https://ctftime.org/event/2392
    • 開催期間
      • 2024-06-21 18:00 UTC ~ 2024-06-23 18:00 UTC
      • 2024-06-22 03:00 JST ~ 2024-06-24 03:00 JST
    • 1チーム最大4人まで
    • 問題文は英語とフランス語の両方で出題されるが、探索する情報の多くはフランス語である可能性が高い
      • /!\ statements will be in French and English but lot of informations you will find will be in french /!\

  • SHUTLOCK CTF 2024
    • https://shutlock.fr/
    • 開催期間
      • 2024-06-28 20:00 CEST ~ 2024-07-08 20:00 CEST
      • 2024-06-29 03:00 JST ~ 2024-07-09 03:00 JST
    • OSINT要素もあるCTF
      • Vous êtes plutôt Forensic, Reverse, Pwn, OSINT, Crypto, Web et autres ? Dans quel domaine de la sécurité informatique excellez-vous?

    • おそらく個人戦?

他の参加者の方が、Writeupで自作問題を出していたので、僕も真似して問題を出してみます(初めての作問)。

2024年5月・アメリカで、巨大なアヒルが風によって道路を横断するアクシデントが発生しました。
その巨大なアヒルの愛称を答えてください。
例えば、ニューヨークにある「自由の女神像」が答えの場合、Statue of LibertyがFlagとなる。

FlagをSHA3-256でハッシュ化するとa1a3d3f0d1cfd6b9c9c4a9b5834141cbdeb57aa18f5138563595e983710187aaとなるため、それで答え合わせを行なってください。

Hint 1

巨大なアヒルに関する日本で報道されたニュース記事は以下になります。
https://news.yahoo.co.jp/articles/3c3ce0cb5cdeea990218d6997132c6d7d77085de

Answer

Thrifty

Discussion