DIVER OSINT CTF 2025 Writeup
概要
DIVER OSINT CTF は、公開情報(OSINT)を駆使して解く、現実世界指向のオンラインCTF
大会の方向性
-
現実世界指向
ゲームとして楽しませるのではなく、「実際に現実の情報を調査している」という本質を重視。OSINTは単なるジオロケーションやSNS閲覧ではなく、公開情報を調査・分析し、意思決定に繋げる実践的な手法として再現。 -
ノウハウを持ち帰ってもらうこと
初心者でも上級者でも、それぞれのレベルでOSINTの知識・ツールを得られるよう問題が設計されている。。初級者向けは“introduction”カテゴリで基礎スキルに触れるもの、上級者向けは緻密な調査能力を問う構成。 -
国際性と公平性
問題文は日本語と英語の二言語対応。国際的な参加ができるよう、地域や言語に依拠しすぎない設計となっている。 -
幅広い難易度
“introduction”, “easy”, “medium”, “hard”などの難易度で構成し、初心者から上級者まで広く対応していて、誰もが参加しやすい設計になっている。
結果
668チームが参加(welcome 以外を 1 問以上解答しているチームは 519 チーム)。5名で即席チーム osusinto🍣 を結成し参加。7,011ポイントで 27位でした。お疲れさまでした!
Writeup
- 解けた課題🚩:27問
- 解けなかった課題🏳️:13問
welcome
🚩welcome
DIVER OSINT CTF 2025へようこそ!
・ルール・規約
・Flagの提出方法について
あなたのチームメンバー全員がルールと規約に同意できたら、Discordの #announcement チャンネルからFlagを見つけて入力してください。
正解すると、ほかの問題がアンロックされます!
Flag形式: Diver25{flag}ヒントについて
このCTFでは ヒントの閲覧による減点はありません 。ぜひ活用してください! 各問題の「Unlock Hint for 0 points」をクリックすると、ヒントを表示できます。試行回数制限について
問題ごとに回数制限があります。"attempts" の表示には十分気をつけてください。
詳細は Flagの提出方法について に記載してあります。必ず読んでください。
作戦開始!
Diver25{We_understand_the_rules_and_how_to_submit_flags!}
introduction
🚩bx
画像 / Picture:
この写真で見える "BX" という看板の座標を答えなさい。
EN
Give the coordinates of the "BX" signboard visible in this picture.
写真に映る建物の門に カトリック上野教会
と書かれていたので、
Google Map で探しストリートビューで合っているか外観を確認。あってそうだったので看板の位置を地図上から選んで submit。
35.71824, 139.78093
🚩document
アメリカ海軍横須賀基地司令部(CFAY)は、米軍の関係者向けに羽田空港・成田空港と基地の間でシャトルバスを運行している。2023年に乗り場案内の書類を作成した人物の名前を答えよ。
Flag形式: Diver25{George Washington}
EN
The US Navy Commander Fleet Activities Yokosuka (CFAY) operates a shuttle bus service between Haneda airport/Narita airport and the base for US military personnel. Answer the name of the person who created the document about the boarding location of the bus in 2023.
Flag Format: Diver25{George Washington}
「CFAY narita haneda shuttle bus」でググると CFAY AIRPORT SHUTTLE SERVICE がヒット。そこにアップロードされている PDF ファイル CFAY Bus Schedule
をダウンロードし、プロパティを表示したら「作成者」のところに名前が載っていたので、それをフラグとして入力。
Diver25{Mi****** Do*****} ※個人名のため一部マスク
🚩finding_my_way
34.735639, 138.994950 にある 建造物 の、OpenStreetMapにおけるWay(ウェイ)番号を答えよ。
Flag形式: Diver25{123456789}
EN
Answer the Way number in OpenStreetMap of the building located at 34.735639, 138.994950. Flag Format: Diver25{123456789}
OpenStreetMap で 34.735639, 138.994950
を検索し、ピンがたった位置にある建物のウェイ番号を確認した(問題文そのまま)。
OpenStreetMap より
Diver25{568613762}
🚩flight_from
画像 / Image:
このヘリコプターが出発した飛行場のICAOコード(4レターコード)で答えよ。
Flag形式: Diver25{RJTT}
EN
Answer with the ICAO code (4 letter code) of the airfield from which this helicopter departed.
Flag Format: Diver25{RJTT}
画像の左上に OKO と書かれているので、「OKO 空港」で検索し出てきた横田飛行場の ICAO: RJTY
を入力しそうになりましたが、地図を念のため確認すると出発地点が立川飛行場だったので立川飛行場の ICAO: RJTC
をフラグとして入力。
Diver25{RJTC}
🚩hidden_service
添付ファイルを確認して、Flagを獲得してください!
Flag形式 / Flag Format: Diver25{xxxxxxxxxxxxxxxxx}
EN
See the attached file and capture the flag!
画像に記載された onion サイトに素直にアクセス
diverahbwzfukwflslim73j7qtthfkesqvfh42obqk4cxrxwtajk7myd[.]onion
Diver25{w3lc0m3_70_d4rkw3b!}
🚩night_accident
動画 / Video:
https://www.youtube.com/watch?v=jHgqCpJNL28
この動画で、車とバスが衝突しそうになった場所はどこか。
EN
In this video, where did the car and bus almost collide?
動画内のバスは SBS Transit 所属、シンガポールのバス会社。衝突しそうになったバスは 58系、その前を行くのは 52系。
YouTube より
この二系統が重複するのは以下のあたり、アクシデントはバス停からの本線侵入時のニアミス。バス停の場所は限られる。片道二車線などの特徴から Bishan St.11 のバス停付近に縛って詳細を確認。
動画内の建物や木の特徴から、バスにぶつかりそうになった車が右折しようとした場所を確認。
また、動画内の道路にある特徴席な X マークが一致するかを確認。Google Street View の過去履歴を確認(動画のアップロード 2014/12/12 より前を確認)。
アクシデント発生の該当箇所と判断して submit。
1.34824, 103.84866
🚩ship
これは、ある組織が運用する船舶である。もし将来、この船が外国に売却されたとしても、変わらない番号を答えよ。
Flag形式: Diver25{現地語での船名_番号}(例: 船名が「ペンギン饅頭号」で番号が 1234567 の場合、Flagは Diver25{ペンギン饅頭号_1234567} となる)
EN
This is a vessel operated by a some organisation. Answer the number that would remain the same if this vessel were to be sold to a foreign country in the future.
Flag Format: Diver25{ship name in the local language_number} (e.g. If the ship name is "ペンギン饅頭号" and the number is 1234567, the flag should be Diver25{ペンギン饅頭号_1234567}.)
まず画像をGoogle検索。AIが以下の通り、教えてくれた。
AI による概要 |
---|
画像に写っている船の名前は「学大洋海京東」と書かれており、船体には「TKT-1401 7JVV」という識別番号も確認できます。これは東京海洋大学の練習船「海鷹丸」です。海鷹丸は、海洋観測や海洋実習に使われる練習船で、学生の教育や研究活動に貢献しています |
船体の名前 神鷹丸
と異なるので、船体の番号 7VJJ
でGoogle検索。WikipediaのページがHITしたので確認。船名は「神鷹丸」でよさそうなので、番号を探す。Wikipediaの船の基本情報の中に以下の番号があり。
- IMO番号:9767675
- MMSI番号:431328000
それぞれの説明を確認。
IMO番号(アイエムオーばんごう)とは、国際海事機関、船舶所有者、船舶管理者に与えられる番号。海上における人命の安全のための国際条約(SOLAS)によって海事上の安全、汚染防止及び海事上の詐欺行為の防止を促進させるため規定された。船舶に与えられたIMO番号は廃船になるまで変更されることがなく、所有者や船籍が変更されたとしても変更されない
。
海上移動業務識別コード(かいじょういどうぎょうむ しきべつコード)、あるいはMMSI番号(Maritime Mobile Service Identity)とは、デジタル選択呼出通信装置(DSC通信装置)を搭載した船舶・地上局に認識番号として交付される番号を指す。構成する数字9桁の最初の3桁は国を示す
IMO番号が「外国に売却されたとしても変わらない番号」と判断し、回答。
Diver25{神鷹丸_9767675}
🚩louvre
ルーブル美術館の公共Wi-Fiアクセスポイントのうち、以下の条件を満たすもののベンダーを答えよ。
情報は2025年2月28日に収集されており、オンライン上で確認できる。
ベンダーはBSSIDに準拠して判定せよ。
Flag形式: Diver25{Company Name} (例: Apple Inc.の場合、Diver25{Apple Inc.} となる。)
EN
Answer the vendor of one of the Louvre's public Wi-Fi access points that meets the following criteria.
Information was collected on 28 February 2025. This can be accessed via online.
Determine the vendor according to the BSSID.
Flag format: Diver25{Company Name} (e.g. If the company is Apple Inc., the flag should be Diver25{Apple Inc.}.)
Wi-Fi といえば WIGLE ですよね、いつもお世話になってます。ルーブル美術館周辺を 2025 年以降に絞って表示。多い…。
WIGLE より
ルーブル美術館の公共 Wi-Fi なら情報が公開されてないはずがない。ということで Louvre Wi-Fi
で雑に検索すると、すぐに Do you offer WiFi? が見つかった。
Do you offer WiFi? より
Louvre_Wifi_Gratuit
で WIGLE 上の検索をかけるも該当する Wi-Fi 情報がみつからず。いったん、条件としている 2025 年以降を解除して確認すると *Louvre_Wifi_Gratuit
がみつかったので、*付きの SSID を指定してフィルタ。
WIGLE より
問題文の「情報は2025年2月28日に収集」から、この日が First または Last Time のいずれかに明記された記録を探すことを考えたが、無作為に *Louvre_Wifi_Gratuit を選んで BSSID を見る限りベンダは偏っていて(A8:5B:F7:*:*:*)、First と Last Time の間に 2025/2/28 を含む記録もある。
WIGLE より
細かく追うことをやめて、BSSID からフラグの確認する。通常、BSSID は MAC アドレスに一致する。また、MAC アドレスは前半 6 桁がベンダーコードで UIC などのサイトでベンダを確認ができる。
UIC より
Diver25{Hewlett Packard Enterprise}
🚩p2t
この写真の左側に掲示されている写真には、ある動物が写っている。その名前を、日本語で書かれている通りに答えよ。
Flag 形式: Diver25{シバイヌ}
EN
The photo posted to the left of this photo shows an animal. Answer its name as it is written in Japanese.
Flag Format: Diver25{シバイヌ}
Google 画像検索に突っ込んでみたものの、それっぽい画像はヒットせず…
立山周辺の施設の壁に貼ってあるものだろうと想像し、Google Map に上がってる宿泊施設や立山自然保護センターの写真で白い壁に写真が貼ってあるものをひたすら探すしました。が、見つからず。YouTube に上がってる動画で写ってるのがあるかも?と思い探しましたが、これも空振り。
(ここまでで 3 時間以上を浪費)
もしかしたら Google には登録されてない画像かも?と思い Bing など他の検索エンジンで探してみることに。Yahoo! の画像検索で「ハシブトガラス 立山」を検索したところ該当する写真が写っている画像を奇跡的に発見。
野鳥.info より
こちらの野鳥.info に掲載されている写真でした。左の写真に写っていたのは「トビ」でした。そして白い壁だと思っていたものはまさかのホワイトボードでした…
ちなみに Google の画像検索でも「ハシブトガラス 立山」を検索すると実は上記の画像ヒットするのですが、順番的に「引き続き他の画像を見る」を押してロードしないと出てこない位置にありました。
Yahoo! の画像検索だとスクロールすると自動でロードされるので、それで見つけられたんだと思います。
Diver25{トビ}
geo
🚩advertisement [easy]
記事 / Article:
https://web.archive.org/web/20250108154113/https://www.noticiasaominuto.com/mundo/2699746/kyiv-diz-que-russia-usou-como-recrutas-ate-180000-presidiarios
この記事の写真が撮影された場所はどこか。
EN
Where were the photographs in this article taken?
画像内から以下のような情報をポイントとして抽出して調査。
- 左手はおそらく
駅の入り口
。 - 広告内の GOV.SPB.RU から
Saint-Petersburg(サンプトペテルブルグ)
周辺 - 建物にある
TOKYO CITY(東京シティ)
はレストラン - 150m先に
バーガーキング
の店舗がある
以上のような特徴のある場所を探す方針で調査。なお、別角度の写真 What does the world make of Putin? Part 2。
AI に候補を聞いてみると幾つか提案してくれたので、とっかかりとして確認したところ、Vasileostrovskaya
が条件にヒット。
Google Mapより
Street View で外観を確認して、フラグを移出。いつか聖地巡礼できる日はくるのだろうか。
Google Mapより
59.94295, 30.27851
🏳️Afghanistan [medium]
動画 / Video:
https://www.youtube.com/watch?v=NWQwx4-MeRg&t=65s
この動画の65~67秒に表示される写真はいつどこで撮影されたものか。
Flag形式: Diver25{撮影場所名_YYYY-MM-DD}(撮影場所名は英語)
例えば、2025年6月5日に、Camp Darbyで撮られた場合は、Diver25{Camp Darby_2025-06-05}となる。
EN
When and where was the photo shown at 65-67 seconds in this video taken?
Flag format: Diver25{location name_YYYY-MM-DD} (location name should be in English)
For example, if it was taken at Camp Darby on June 5, 2025, it would be Diver25{Camp Darby_2025-06-05}.
Youtube 動画の該当箇所は、兵士二人がバスケをしている写真。
YouTube より
画像検索では Tineye でヒットしたので、該当する記事 からの Pivoting を試行するも、そのあたりで中断。
unsolved
🚩night_street [hard]
画像の中心に写っている茶色の2階建ての建物に入る施設の正式名称を現地語表記で答えなさい。
Flag形式: Diver25{施設名}(例: Diver25{お台場海浜公園前郵便局})
注意: この問題を解く際、外部サイトへの機械的なアクセスやスクレイピングは禁止します。また、それらを行う必要はありません。 ただし、ブラウザから手動で取得できる情報や、公開されているAPIサービスやデータセットの利用は問題ありません。
EN
Answer the official name of the facility that will be housed in the two-story brown building in the center of the image (in local language).
Flag Format: Diver25{Facility Name} (e.g. Diver25{お台場海浜公園前郵便局})
Warning: Mechanical access or scraping of external sites is prohibited when solving this challenge. Nor are you required to do so. However, there is no problem with using public API services, public datasets and information retrieved from the web browser by (literally) your hand.
写真に映る赤い屋根は、リンガーハット!
右の建物の文字は 3文字漢字 + クリニック
っぽいが、漢字部分が読み取れず。
ダメもとで Deep Research にリンガーハットとクリニックが隣接している箇所を調べさせたところ、
明らかに違うものが出てきた(同一建物内じゃない)。
ということで、リンガーハットの店舗情報 にある店舗を上から順にチェックしていくことに。
ほとんどの店舗がフードコートだったことや、Google Map のリンクがあったことから、開始から 30 分程度で当たりを引きました。草が生えた中央分離帯とコンクリート舗装の道路がいい目印でした。当たりの店舗は 名古屋弥富通店
でした。
Google Map より
そしてクリニックの名前は 弥富通クリニック
でした。
Diver25{弥富通クリニック}
🏳️what3slashes [medium]
この画像が撮影されたとき、正面に家が3軒、右手に家が1軒あった。
それから少し経った、ある月の初旬にこの場所にもう一度訪れてみた。そのときには、正面左側に家が1軒増えていて、正面右側にもう1軒が建設中であった。その時点で、建設中の家に屋根はなかったが、黒っぽい屋根を作る予定だという。
「ある月の初旬」とは何年の何月のことだろうか。
Flag形式 : Diver25{YYYY/MM} (e.g. Diver25{2025/06})
EN
When this image was taken, there were three houses in front and one on the right.
Some time later, at the beginning of one of the months, I visited this place again. At that time, one more house had been added to the left side of the front and another was under construction on the right side of the front. At that point, the house under construction did not have a roof, but they were planning to build a blackish roof. In which year and month is "the beginning of one of the months"?
Flag Format: Diver25{YYYY/MM} (e.g. Diver25{2025/06})
3つの言葉といえば What3words ですよね。早速、入力してみる。
What3words より
Google Map では このあたり。Google Map のストリートビューでは、過去に遡れそうになかった。ここで中断。
競技後にフラグ取得
Google Map でさかのぼれないときは、Google Earth あたりの出番。競技終了後に確認したところ、正面3軒、右手1軒のタイミングまでさかのぼれたので、あとはタイムラインで追いかけたら Diver25{2018/11} がフラグ
と判断。
Google Earth より
unsolved
🚩hole [medium]
この穴があった場所はどこか。
EN
Where was this hole located?
与えられた画像で画像検索すると、この記事がヒット。中の動画を確認することで、動画の撮影場所が 中国の山西省大同市
らしいことがわかる。
YouTube より
大同市周辺の飛行場をOverpass Turboで確認(雑に)。
OverPass Turbo より
Google Map で確認すると、大同市の市街地から南東の離れた位置の飛行場が形状的に一致する。動画内で車が走り抜ける場所と一致するのは黄色のマーカあたり。
Google Map より
動画内の距離表示とサイズ的にも同じであることを Google Map の距離測定で確認。穴はすでにないが路面の模様も一致がみられる。ここがフラグの位置と判断。
YouTube より
Google Map より
39.40479, 114.16332
🏳️convenience [easy]
青森県内に、公園とコンビニ、スーパーマーケットが互いに約100m圏内に存在する場所がいくつかある。また、これはOpenStreetMapで確認可能である。
この条件を満たす 公園 のうち、最南端 のものについて、OpenStreetMap上での Way Number を答えよ。
なお、「公園」の定義は、OpenStreetMap上で "park" (leisure=park) と分類されているものに準拠する。
Flag形式: Diver25{123456789}
EN
There are several locations in Aomori Prefecture (青森県) where a park, a convenience store and a supermarket exist within approximately 100 metres of each other. This can be also confirmed on OpenStreetMap.
Answer the Way Number (on the OpenStreetMap) of the southernmost of these parks that satisfy this condition.
The definition of "park" conforms to that classified as "park" (leisure=park) on the OpenStreetMap.
Flag Format: Diver25{123456789}
これは Openpass Turbo の出番。まずは雑に Chat GPT に質問。
できあがったクエリを実行!ちなみに100mではなくて120mにしているのは、オブジェクトの端からの距離などをいったん気にせず、雑に見つけてあとは目検をすることを考えていたから。
結果は 0件… う…
競技中はあれこれと同じように試行錯誤したが正解にたどり着けずに、中断。
競技後にシンプルに考えて進めたら、フラグにたどり着いた。
競技後にフラグ取得
条件を一気に依頼しすぎたのではないか、と考えて徐々に条件を足してみることにした。
まずは、先ほどの以来の (1), (2), (3) までをコピーしてクエリの作成を依頼。期待通りに動くクエリが作成されたので、(4)を追加。期待通りの動きが確認できたので、(5)を追加。今度は、候補が見つかった。
Openpass Turbo より
Diver25{556701681}
でよさそう。あっていた。
Openpass Turbo より
unsolved
🚩Talentopolis [medium]
記事 / Article:
https://www.guineaecuatorialpress.com/noticias/primera_edicion_de_talentopoli
"Primera edición de Talentopolis" という記事内に登場するステージの位置を答えよ。
EN
Answer the location of the stage appeared in the article titled "Primera edición de Talentopolis".
記事を翻訳したところ場所はどうも 赤道ギニアのマラボのサンファン地区(barrio San Juan de Malabo)
のどこからしい。「barrio San Juan de Malabo」で検索すると、ピンの当たりが San Juan らしい。残念なことにこの辺にはストリートビューがありません…。
Google Map より
他に情報はないか「Talentopolis barrio San Juan de Malabo」で検索すると、この記事 がヒット。どうもステージは野外らしい。また左奥に 4~5 階建てで屋根が緑の建物が見えます。
Inicia el proyecto Talentópolis en el barrio San Juan de esta ciudad capital より
Google Map で該当する場所を探したところ、先ほどピンが立っていたところの真下あたりにある横長の建物がそうっぽい。
Google Map より
同様の建物がいくつかあるので、絞り込むために別の写真をみてみます。ステージ向かって右奥に灰色の屋根の四角い建物が見えます。またその手前側に草が生い茂っている空き地が見えます。
Inicia el proyecto Talentópolis en el barrio San Juan de esta ciudad capital より
これらをふまえ探したところ、おそらくここ だろうということで提出。
Google Map より
3.73757, 8.79655
🏳️elevator [hard]
これらの写真はあるホテルの客室内と、その窓からの景色を撮影したものである(撮影日は2024年)。
このホテルに設置されたエレベーターには、2件の故障記録が存在しているものが1基ある。 故障日と、故障記録があるエレベーターの登録番号を答えよ。
Flag形式: Diver25{YYYYMMDD_YYYYMMDD_1234567}例えば、登録番号 "1234567" のエレベーターが2000年11月20日と2020年2月13日に故障していた場合、Flagは Diver25{20001120_20200213_1234567} となる。
注意:
ホテルや企業に接触しないでください。公開情報からFlagを入手できます。
EN
These photos show the interior of one hotel room and the view from its windows (Taken in 2024).
There is one elevator installed in this hotel for which two failure records exist.
Answer dates of failure and the registration number of the elevator that has a fault history.
Flag Format: Diver25{YYYYMMDD_YYYYMMDD_1234567}
For example, if an elevator with registration number "1234567" failed on 20 November 2000 and 13 February 2020, the Flag would be Diver25{20001120_20200213_1234567}.
CAUTION:
DO NOT CONTACT HOTELS AND COMPANIES. YOU CAN GET THE FLAG FROM OPEN SOURCE.
ほぼ未着手。
unsolved
recon
🚩00_engineer [easy]
東京駅の近くでソフトウェアエンジニアの名札を拾った。おそらく落とし物だろう。
このエンジニアが勤務している会社のWebサイト(トップページ)のURLを答えよ。
Flag 形式: Diver25{https://google.com}recon カテゴリの問題を解答するには、この問題の情報が必要となる。ただし、この問題を除き、どの順序で解答しても構わない。
EN
An software engineer's nameplate was picked up near Tokyo Station. This should be a lost item.
Answer the URL of the website (index page) of the company where this engineer works.
Flag Format: Diver25{https://google.com}
To answer the challenges in the recon category, information on this challenge is required. However, the challenges can be answered in any order except this one.
エンジニアということで、名札に書かれた「kodai_sn」を GitHub で検索すると、こちらのリポジトリがヒット。
中身を見ると Magneight Software (since 2018)
と書かれておりこれが会社名なのですが、競技中はこれを見落としてました。
GitHub のプロフィールにある X アカウント kodai_sn の投稿を見たところ、こちらのSpeakerDeck にスライドを公開しており、これをダウンロードしプロパティを見ると、
magn8soft
という文字を発見。そのままだと目ぼしい情報がなかったため 8 を eight に置き換え「magneight」で検索したところ、会社のサイト を発見。おそらくここだろうということで提出。
Diver25{https://magneight.com}
🏳️01_asset [easy]
"00_engineer" の問題で見つかった会社のCEOが持っていたスマートフォンの資産番号を答えよ。
Flag 形式: Diver25{ABCD-12345}
EN
Answer the asset number of the smartphone owned by the CEO of the company found in the "00_engineer" challenge.
Flag Format: Diver25{ABCD-12345}
スマートフォンの資産番号ということは、画像があるってことかな。CEO の SNS アカウントがありそうなので、それを探す。
- mizuki1206edelweiss
mizuki1206anemone@gmail.com
- Mizuki Sekozaki
mizuki1206edelweiss
から Instagram のアカウント発見できていたが、二枚目の写真を見落としていた。
unsolved
🚩02_recruit [medium]
"00_engineer" の問題で見つかった会社で、採用を担当していると思われる人物の氏名を答えよ。
Flag 形式: Diver25{Shigeru Ishiba} (ローマ字表記)
EN
Answer the name of the person you think is in charge of recruitment at the company found in the "00_engineer" challenge.
Flag Format: Diver25{Shigeru Ishiba} (In Latin alphabet. NOT Hiragana, Katakana, Kanji etc.)
CEO の Google Calendar から、magneight は 2025/4/10 に何かをリリースしたらしい。4/10の 魚拓。同時期の Contact 情報(魚拓)に 募集ポジション情報 への導線 here
があることを確認。
ファイルのオーナーは makoto.u.sunflower@gmail.com
。
epieos で追加情報を確認すると、google mapに口コミがあり、ユーザ名は Makoto Uchigashima
となっている。採用ファイルのオーナーである点から、採用担当と考えられるのでフラグとして提出。
Google Map より
Diver25{Makoto Uchigashima}
🚩03_ceo [medium]
"00_engineer" の問題で見つかった会社の、CEOのメールアドレス(Gmail)を答えよ。
Flag 形式: Diver25{example@gmail.com}
EN
Answer the email address (Gmail) of the CEO of the company found in "00_engineer" challenge?
Flag Format: Diver25{example@gmail.com}
E_00_engineer で見つけたサイトの about ページ に CEO Mizuki Sekozaki
と名前が記載されている。
また、E_00_engineer 問題で見つけた GitHub アカウント kodai-snのリポジトリ を調査したところ fork-practice をフォークしているアカウント mizuki1206edelweiss を発見。ID に mizuki
の文字が含まれるため、この GitHub アカウントが CEO のものであると考えられる。
コミットログからメールアドレスが得られないか確認するため、mizuki1206edelweiss の fork-practice を手元にクローンし、git log
でコミットログを確認。
CEO mizuki のものと思われるメールアドレスが得られたので、提出。
Diver25{mizuki1206anemone@gmail.com}
🚩04_internal [medium]
"00_engineer" の問題で見つかった会社では、Webブラウザからアクセス可能な社内用のDevOpsプラットフォームが運用されている。
そのシステムのバージョン名を、表記されている通りに答えよ。
Flag 形式: Diver25{135.0.1-f2+nightly}
EN
The company found in the "00_engineer" challenge operates an internal DevOps platform which can be accessed from web browsers.
Answer the name of the version of the system as it is displayed.
Flag Format: Diver25{135.0.1-f2+nightly}
magneight.com
の情報を調査。Censys にて、DNS 情報として以下をを発見した。
- gitea.magn8soft.tokyo
- magn8soft.tokyo
- magneight.com
giteaが露出しているので、アクセスすると バージョン: 1.24.0+dev-303-gd88b012525
の情報が確認可能。
Diver25{1.24.0+dev-303-gd88b012525}
🏳️05_designer [hard]
"00_engineer" の問題で見つかった会社のWebサイトを手がけたデザイナーの連絡先(メールアドレス)を答えよ。
Flag 形式: Diver25{foo.bar@example.com}
EN
Answer the contact email address of the designer who worked on the company's website found in the "00_engineer" challenge.
Flag Format: Diver25{foo.bar@example.com}
このあたりからの Pivoting になると予想して調査を開始。
X より
この銭湯は錦糸町にある 黄金湯。デザイナーも一緒に訪問しているかもしれないとレビューなども確認してみるが、にそれらしき書き込みはなく、中断。
unsolved
🏳️06_leaked [medium]
"00_engineer" の問題で見つかったソフトウェアエンジニアのパスワードが漏洩して公開されてしまったらしい。彼はパスワードを変更して事なきを得たようだが、漏洩したパスワードは何だっただろうか。
Flag 形式: Diver25{his_password}
EN
The password of the software engineer found in the "00_engineer" challenge has apparently been compromised and became public.
He seems to have changed his password and got away with it, but what was the compromised password?
Flag Format: Diver25{his_password}
メールアドレス kodaisn.development@gmail.com
は判明しているので、この情報からの Pivoting と予想して情報を捜索するも、HaveIBeenPwned など思い当たる箇所で反応がなく、Pivoting が捗らず、中断。
unsolved
transportation
🚩next_train [easy]
この音声が録音された駅はどこか。駅名を答えよ(日本語でも英語でも可)。
(駅名は鉄道会社の公式サイトやWikipediaに記載されている表記とする)
Flag形式: Diver25{京都駅}
EN
Which station was this sound recorded at? Answer the name of the station.
(The station name should be as it appears on the official website of the railway company or on Wikipedia.)
Either Japanese or English are okay.
Flag Format: Diver25{Kyoto Station}
音声を確認
- JR東日本
- 15番線普通久里浜行き
この段階でJR品川駅(横須賀線)とわかった。なぜならよく使う経路だから!
Diver25{品川駅}
🚩platform [easy]
この写真が撮影された駅はどこか。駅名を答えよ(日本語でも英語でも可)。
(駅名は鉄道会社の公式サイトやWikipediaに記載されている表記とする)
Flag形式: Diver25{京都駅}
EN
Which station was this photograph taken at? Answer the name of the station.
(The station name should be as it appears on the official website of the railway company or on Wikipedia.)
Either Japanese or English are okay.
Flag Format: Diver25{Kyoto Station}
奥に「らいと」と書かれた居酒屋?らしき店が見えます。店の外観をスクショして 居酒屋 らいと
のキーワードと合わせて Google 検索にかけてみましたが、該当するものはヒットせず。他に使えそうな情報はないかということでここに着目。
10 両 と 12 両 と 6 両 の列車が止まる駅
を Gemini に聞いたところ、
(この下にも候補が続いていたが省略)
と 15 路線程度の候補が出てきたため、絞りきれず…。
そこで上記画像を Google 画像検索に突っ込んだところ、「12 両」の 12 が緑色の停止位置の表示が写ってる写真がいくつかヒット。調べてみると青梅線っぽいことがわかった。青梅線 居酒屋 らいと
で Google 検索すると画像の店の外観が出てきました。
Google 検索の結果より
真横の駅は「牛浜駅」ということで、フラグを提出。ちなみに居酒屋じゃなくてバーだったようです。
Diver25{牛浜駅}
🚩36_years_ago [easy]
このニュース動画に映っている航空機に、1989年8月時点で割り当てられていたトランスポンダのMode Sコードを16進数表記で答えてください。
https://www.youtube.com/watch?v=OvR2O_Vpwc0
Flag形式: Diver25{1234AB}
content warning: この映像は軽微な航空事故の様子を含みます。
EN
Answer the transponder Mode S code assigned to the aircraft shown in this news video as of August 1989 in hexadecimal notation.
content warning: This video contains footage of minor aviation accident.
航空機に書かれている番号は JA4098
と読める。
YouTubeより
「JA4098」で Google 検索すると 日本の民間登録航空機検索データベース JA Search が出てきた。
JA Search より
ここに記載されている N9768L
を Google 検索したところ、AviationDB がヒット。どうやら 1990 年以前はアメリカで飛んでいた機体のようです。
Mode S Code は 53316552
と書かれており、10 進数のように見えます。これを 10 進数から 16 進数に変換したところ 32D8BC8
となりますが、Mode S Code は 6 桁の 16 進数なので、桁数が合いません…。
Gemini に聞いたところ、どうやら Mode S Code を 8 進数で表記するケースもあるらしく、変換ツール TRIG を提示された。このサイトで変換すると AD9D6A
が得られたのでフラグとして提出。
TRIG より
Diver25{AD9D6A}
🚩sanction [easy]
2024年10月25日、制裁下にあるロシア船籍のRORO船「ANGARA」がある港湾に停泊していることが衛星画像で確認された。
停泊位置を答えよ。
EN
On 25 October 2024, satellite imagery confirmed that the Russian-flagged RORO vessel "ANGARA", which is under sanctions, was anchored in a certain port.
Answer the position of the anchorage.
「ANGARA ship satellite image」で Google 検索したところ、Russian Oil Deliveries to Pyongyang Breach the Million Barrel Mark がヒット。掲載されていた画像を見ると、10/26 の UTC 2 時に ここ にいたらしい。
Russian Oil Deliveries to Pyongyang Breach the Million Barrel Mark より
日付が一日ずれていますが、アメリカ時間だったらまだ 10/25 だからセーフだろということで提出。
ぐぬぬ…。前日は別のところにいたらしいが、わからん…。
終了前にもう一度検索したところ、外務省のレポート Unlawful Military Cooperation including Arms Transfers between North Korea and Russia を発見(検索ワード忘れました🙇)。ちょうど 10/25 の衛星写真が載っています。
前述の外務省レポートより
先ほどと同じく Rajin の港ですが、停泊している位置が違っていたようです。この位置で再度提出し、クリア。
42.22682, 130.28239
🏳️listen [medium]
(この航空管制のやり取りが録音)[https://drive.google.com/file/d/1s_HC_S_9szbkupw9jQo4Zsvkoj73Qd_6/view?usp=sharing]された空港のICAOコード(4レターコード)を答えよ。
Flag形式: Diver25{RJTT}
音声出典: LiveATC CYEG-Del-Gnd-Misc-Jan-18-2025-0500Z
EN
Answer the ICAO 4 letter code of the airport where this air traffic control communication was recorded.
Flag Format: Diver25{RJTT}
NotebookLM に食わせて文字起こしを開始。が、その後は未着手。
NotebookLM より
unsolved
🏳️air2air [medium]
この 動画 は2025年3月11日(現地時間)に撮影された。遠くに映っている航空機のコールサインと機体記号を答えよ。
(撮影者が搭乗している航空機ではない)
Flag形式: Diver25{コールサイン_機体記号}(例: Diver25{ANA0183_JA381A})
EN
This video was taken on 11 March 2025 (in local time).
Answer the callsign and registration number of the aircraft seen in the distance.
(Not the aircraft the person who shot the video is on board)
Flag Format: Diver25{CALLSIGN_Registration}(Example: Diver25{ANA0183_JA381A})
動画を確認する限り、進行方向 22 時あたりの位置で距離は 数キロ程度と思われる。おそらく乗ってる飛行機と同じ向きに進んでる(画面の右向き)。
乗ってる飛行機は 1h 3m 後に台湾に到着することはわかる。時刻は翼に落ちてる影から、午後 (JSTだと15時くらい?)と思われる。40A は座席番号。
Youtube より
羽の模様から搭乗便は STARLUX
で、到着時間的には、以下の便ではないか?
FlightAware より
「課金しないと過去履歴がみれない」、とメモがのこり中断。
_roku_ の方で、過去履歴は ADS-B Exchange で見れることは、過去の経験から知っていたものの不在にしており、競技終了 10 分前に気づくも間に合わず。
unsolved
history
🚩bridge [medium]
動画 / Video:
https://www.youtube.com/watch?v=fRMi8TXQRuo, (無音です / No audio)
この動画で列車が通過した橋梁は、ある災害で損傷した後に架け替えられたものである。架け替えに際して、他の橋梁の構造物が流用されたことがある文献に示されている。その流用元の橋梁名を答えよ(この橋の名前ではない)。
Flag形式: Diver25{橋梁名}(例: Diver25{日本橋川橋梁})
EN
The bridge that the train passed over in this video was replaced after it was damaged in one of the disasters. A document shows that structures from other bridges were diverted during the replacement.
What is the name of the bridge from which it was diverted? (NOT the name of THIS bridge)
Flag format: Diver25{The name of the bridge in Japanese} (Example: Diver25{日本橋川橋梁})
与えられた動画内の 園芸資材 千歳農園
から、動画が撮影されているのは 豊肥本線
と判断した。
YouTube より
Google Map で確認し、通過した橋梁の周囲の映像から場所は 白川を渡るこの橋梁 に一致する。
Google Map より
橋梁に関する情報を探したところ 歴史的鋼橋検索 を発見し、位置情報 32.81826,130.745583
も一致することから橋梁名は 第二白川橋梁
と判断。参考文献に 昭和28年西日本水害調査報告書
がリストされているため、昭和28年(1953年)に水害にあったと考えられる。
橋梁名が判明したので、検索して関連情報を捜索したところ 熊本県下における近代橋梁の発展史に関する研究 の PDF がヒット。確認したところ 標題~第2章 の PDF p20 内に以下の記述があることが確認できたので、フラグとして提出。
熊本県下における近代橋梁の発展史に関する研究 より
Diver25{澱川橋梁}
🏳️internment [hard]
著名な木曜島の真珠採りダイバーであった藤井富太郎氏は、第二次世界大戦中、強制収容されました。彼が釈放された収容所と釈放の年月日を明らかにしてください。
Flag 形式: Diver25{YYYY-MM-DD_キャンプ番号_キャンプ地名_州名}例えば、「2025年6月1日に、キャンプ番号7番のDiver州Daibaキャンプ」から釈放されたならば、 Diver25{2025-06-01_7_Daiba_Diver} となります。なお、キャンプ番号がない場合はX(大文字のX)を入れてください。例えば、Diver25{2025-06-01_X_Daiba_Diver} となります。
EN
Tomitaro Fujii(藤井富太郎), a prominent Thursday Island pearl diver, was interned during World War II. Please identify the camp from which he was released and the date of his release.
Flag Format: Diver25{YYYY-MM-DD_CampNumber_CampPlaceName_State}
For example, if he was released from the Camp 7 (Daiba Camp) in Diver State, on June 1, 2025, the flag should be Diver25{2025-06-01_7_Daiba_Diver}. If the camp doesn't have a number, please use X (capital Latin alphabet X). For example, Diver25{2025-06-01_X_Daiba_Diver}.
氏名から情報を検索。こちらのサイト 生石高原の麓から によると、
- 富太郎氏は、仲間とともに、本土ニューサウスウェールズ州内陸部のヘイ収容所に収監
- 戦後、木曜島に戻る
- 1961年にはオーストラリア(英国)の国籍を取得
といった情報が得られたので、Pivoting で情報の収集を継続。カウラ日本人戦争墓地によると、
- 1946年3月1日、最後の日本軍捕虜がヘイ収容所を去った
- 生き残った捕虜たちはヘイ収容所とマーチソン収容所に移送された
- その後、1946月2月と3月に日本に送還された
念のため Diver25{1946-03-01_6_Hay_NewSouthWales}
は確認したが、やはり違った。Hard問題だし、それはそうか。このあたりで調査中断。
unsolved
military
🚩object [medium]
69.216246, 33.378242 には大きな構造物が存在する。この構造物のプロジェクト番号および、構造物の名称(固有名詞)を 現地語 で答えよ。
Flag形式: Diver25{プロジェクト番号_名称}(例: Diver25{955А_Борей-А})
EN
There is a large object at 69.216246, 33.378242. Answer the project number and particular name of that object in local language. Flag Format: Diver25{PROJECT NUMBER_NAME} (e.g. Diver25{955А_Борей-А})
座標から Google Map 上で構造物を確認。
Google Map より
この Google Map のスクショを Google 検索にかけ、目ぼしいものがないか探したところ、このサイト Плавучие доки специального назначения(特殊用途浮きドック) がヒット。翻訳にかけて読んでみると、小さいドックは PD-78
で、問題の対象になっている大きいドックは PD-72
というらしい。
プロジェクト番号も 13560
と記載があった。
Плавучие доки специального назначения より
PD の部分は元のキリル文字でフラグを提出。
Diver25{13560_ПД-72}
🚩radar [easy]
画像に写っているものは、福建省に存在する、中国人民解放軍東部戦区のレーダー施設であると考えられる。公式な情報は明らかにされていないものの、オンライン上で中国の軍事を分析している人々がこの基地を運用する部隊と分隊の番号を特定しているらしい。
もちろん、オンライン上の情報だけを鵜呑みにするわけにはいかないが、ひとまず検討する価値はあるだろう。その情報を探り当て、教えてほしい。
Flag形式: Diver25{部隊番号_分隊番号}(例えば12345部隊の56分隊のとき、Diver25{12345_56} となる)
Image source: Google Earth
EN
The facility in the image is believed to be a radar facility in the Chinese People's Liberation Army's Eastern War Zone, located in Fujian Province.
Although no official information has been revealed, people analysing PLA on the internet have apparently identified the unit and squad numbers that operate this base. Of course, we cannot just rely on those information on the internet, but it is worth considering at least.
Flag Format: Diver25{Unit Number_Squad Number} (e.g. If the answer is Squad 56 of Unit 12345, the flag should be Diver25{12345_56})
Image source: Google Earth
画像の場所を特定するため、気合いで Google Map で福建省の海岸を北から見ていくことに。
1時間ほど探したところで、無理だ!と思い(中国広すぎ)、可能性の高そうな台湾付近の海岸に絞って捜索する方針に切り替え、程なくして該当箇所を発見。
場所の地名が Changle (長楽) だったので army radar "Changle”
で検索したところ、こちらのサイト Chinese Armed Forces ORBAT Part 7: Radars and SAMs がヒット。
MUCD は調べてみるとどうも部隊番号のことっぽい。となると Unit 84
の 84 が分隊番号だろうということで Diver25{92985_84}
をフラグとして入力しました(英語の問題文だと部隊番号が Unit Number と書かれていたので少し悩んだ末にえいやで入力)。
ちなみに後から気が付きましたが、Google 画像検索で検索して出てきたサイト 海軍蒼穹機動雷達車組首曝光 偵搜距離可達130 を翻訳して読んでみると、
と書かれており、Google Map で福建省江田鎮付近を捜索すると比較的すぐに見つけられたんじゃないかと思います。
Diver25{92985_84}
🏳️worker [easy]
"object" の問題で示された構造物で仕事をしていた1964年生まれのある人物は、Akhtubinskに居住しているとされる。
この人物が1987年~2009年にかけて勤務していた組織のOGRNを答えよ。
Flag形式: Diver25{1234567890123}
EN
A person born in 1964 who worked at the object indicated in the "object" challenge is said to reside in Akhtubinsk.
Answer the OGRN of the organisation where this person worked between 1987 and 2009.
Flag format: Diver25{1234567890123}
ロシアの法人登録番号 (OGRN) は 13 桁らしい。
Akhtubinsk をロシア語にすると Ахтубинск
になるので、雑に PD-72 で修理業務請け負ってる業者を Chat GPT に聞いてみる。
easy 問題だし、ワンチャンいけるかもしれない。
- 前者:
Diver25{1082902002677}
- 後者:
Diver25{1082902001401}
いずれも incorrect でした、やはりそうですよね。調査中断。
unsolved
hardware
🚩phone [medium]
2016年7月23日~24日、この携帯電話の発売に先立ってEMI試験が行われた。試験は三重県の会社が実施したようだ。その試験に供された端末のシリアル番号を答えよ。
シリアル番号に / や - といった記号を含む場合、その記号も含めて記載すること。
Flag形式(例): Diver25{123-45/6789-0}
EN
An EMI test was conducted prior to the launch of this mobile phone on 23-24 July 2016. The test was conducted by a company in Mie Prefecture (Mie-ken), Japan.
Answer the serial number of the specific mobile phone that was subjected to that test.
If the serial number contains symbols such as / and -, include them.
Flag Format (example): Diver25{123-45/6789-0}
本体左下の印字から機種は SH-01J であることがわかる。ChatGPT に聞いてみたところ、基本的にはシリアルナンバーは非公開とのこと。
とはいえ、試験レポートにヒントになる情報が書かれているかもしれないので、FCC ID からレポートを探してみることに。ChatGPT に FCC ID を聞いたところ APYHRO00240
らしい。
念のため SH-01J APYHRO00240
検索してみると、取扱説明書のPDF が見つかり、p.94 に以下の記載を発見したため、正しそう。
fcc id APYHRO00240
で検索すると、APYHRO00240に関する FCCレポート のページがヒット。アップロードされている PDF のうち Document Type が Test Report
となっているものを順に確認。こちらの報告者の住所が「Mie-ken」となっていたため、これだろうということで中身を読んでいくと p.8 にシリアルナンバーの記載を発見。
Diver25{004401/11/583099/0}
🏳️UART [hard]
https://www.office-partner.de/tp-link-archer-ax20-12778639
この商品のイーサネットスイッチコントローラに直接UARTでアクセスを試みたい。どの部品の、どのピンにアクセスすればいいだろうか。
PCB上の部品番号 と、その部品の UART RX / UART TX ピン番号 を答えよ。ピン番号は部品の仕様に準拠せよ。
なお、ピンヘッダやコネクタが利用可能な場合でも、イーサネットスイッチコントローラのピン番号を答えてほしい。
Flag形式: Diver25{PCB上の部品番号_UART RXピン番号_UART TXピン番号}
(例えば、イーサネットスイッチコントローラが T21 という部品番号で、RXのピン番号が120、TXのピン番号が150であれば、Diver25{T21_120_150}となる)
EN
I want to try to access the Ethernet switch controller of this product directly via UART. Which component and which pin should I access?
Answer the part number on the PCB and the UART RX / UART TX pin number of the component. The pin number should follow the specification of the component.
Note that even if pin headers and connectors are available, answer the pin numbers of the Ethernet switch controller. Flag Format: Diver25{Part Number on PCB_UART RX pin number_UART TX pin number}
(If the Ethernet switch controller has part number T21 on PCB, RX pin number is 120 and TX pin number is 150, the flag should be Diver25{T21_120_150}.)
与えられたサイトから対象は TP-Link Archer AX20 AX1800 V2 Dualband Wi-Fi 6 Router
とわかるので、まずは素直に検索して情報の収集を開始。
さすがにわからないか。
TP-Link Archer AX20 WiFi 6 Review: the sweet spot より
これは、V1 っぽいが、参考なるかもしれない。
4 çekirdekli Broadcom yongalı, Wi-Fi 6 Router! “TP-Link Archer AX20 incelemesi“ より
その後、TP-LinkのサイトからGPLコードを取得して中身を確認するなど、手がかりを探したものの調査中断。
unsolved
company
🚩bid [medium]
2023年、オマーンにおいて、ある施設に関連するニュースが報じられた。
https://www.youtube.com/watch?v=TFdubskF9Kw
その後、2024年10~11月に、この施設に関連すると推定される、井戸およびパイプラインを建設するための入札が実施された。
このとき、3位の金額で入札した企業のCEOの名前を、Webサイトに掲載されている英語表記で答えよ。
Flag形式: Diver25{Kelly Ortberg}
EN
In 2023, news related to a facility was reported in Oman. https://www.youtube.com/watch?v=TFdubskF9Kw
A tender was subsequently issued in October-November 2024 for the construction of wells and pipelines, presumably associated with this facility. Answer the name of the CEO of the company that bid for the third highest amount in this tender.
(In English. Also follow the format in the company's official site.)
Flag Format: Diver25{Kelly Ortberg}
動画を英訳字幕で確認したところ、The Ministry of Agriculture, Fisheries and Water Resources が以下の企業と施設の開発に関して契約したとのこと。
- 施設:veterinary hospital in Al Bashair area in Adam Wilayat
- 請負会社:al khairat agricultural services and development
政府系は入札情報を公開しているはずなので入札情報公開サイトを検索。
- 官公庁系+関係しそうな入札を発見
- AL Najd Projects Petrochemical Services の価格が3番目に高い
Nama Water Services より
会社情報からCEO名を確認 LinkedIn。Diver25{Sa** Mo****** Al Ka*****}
だと思ったが、Incorrect。そもそも注目すべき入札が間違っていそう。
別の 入札サイト で、水道周りの関連入札を再度確認。
The General Secretariat of the Tender Board より
3番目の会社 Golden Sands Transport Services LLC の ホームページにてCEO名を確認 して、フラグとして提出。
Diver25{Ba*** Al Ma***} ※個人名のため一部マスク
🏳️expense [medium]
2025年1月、São Miguel do Guamáの市長が、ある食品関連会社にクレジットカード決済で支払った金額(現地通貨)を答えよ。
Flag形式: Diver25{1234.56}(通貨記号/コードは不要)
EN
Answer the amount (in local currency) paid by the mayor of São Miguel do Guamá to a food-related company by credit card payment in January 2025.
Flag Format: Diver25{1234.56} (Currency symbol or code not required)
市長は eduardo pio x (Eduardo Sampaio Gomes Leite)。公費サイトは探せたが。それらしいものが見当たらない。市長の行動をチェックしてみるが、そこから Pivoting できなかった。
unsolved
競技を終えて感想を
tama
OSINT CTF の参加は初めてでしたが、取り組みがいのある問題ばかりで楽しめました。作問や大会の運営をしてくださった皆様に感謝申し上げます。
yoshi_kojima
日々業務で使っているOSINT力(主に社内の動向や案件などw)はあまり発揮されず、ちょこちょこしか解けませんでした。ただ、久々にみんなでわいわいCTFができて楽しかったです。準備運動は終わったので、次回こそは!w
ur_hrt
チームの方々が着々と解いている中、全然解けず申し訳ない…と思ってました。日頃の鍛錬の重要性に気付く機会をいただき感謝です🙏
eeeekichi
1問くらい解ければ…と思って初参戦。何とか1問は解けて嬉しかったです!
惜しいところまでは分かっていたものも数問あり、自分の詰めの甘さを実感しました。これだけの問題を用意する出題者も大変だよな…運営の皆様に感謝です。
_roku_
今年は両日とも私用外出にかぶってしまいました。端末を物理的に触れる時間の確保が難しいため参加を諦めていたものの、身近な方に声掛けしてチーム作り、参加可能な時間にだけ参加するスタイルで参加しました。時間は限られましたが、楽しかった & やっぱり参加して良かった!
謝辞
声掛けに応じてくれた 4名に感謝!
そして今年もこんなに楽しいイベントを開催頂いた事務局各位に圧倒的感謝!!
ありがとうございました。また来年も楽しみにしています。 2025年6月吉日
Discussion