[OSINT]DIVER OSINT CTF 2025 Writeup

# はじめに
こんにちは、araakiです。
今回は日本時間2025年 6/7 12:00～6/8 12:00の24時間で行われたDIVER OSINT CTF 2025に、チーム"teapp"として参加してきました！
結果としては、チーム中668チーム中16位でした。
![スクリーンショット 2025-06-08 124419.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/03bd6500-2a92-4137-8ac6-c65b69214753.png)
今回は自分が解いた9問のwriteupを書いていきたいと思います。

(想定解法と異なっている場合がございますので、ご了承ください。)

## introduction

### louvre (176pt / 181 solves)

```
ルーブル美術館の公共Wi-Fiアクセスポイントのうち、以下の条件を満たすもののベンダーを答えよ。
・情報は2025年2月28日に収集されており、オンライン上で確認できる。
・ベンダーはBSSIDに準拠して判定せよ。
```

Wi-Fiアクセスポイントについて調査するツールとして、アクセスポイントをマッピングしてくれる[WiGLE.net](https://wigle.net)というサイトがあります。これでルーブル美術館周辺を調べてみると
![スクリーンショット 2025-06-09 172558.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/e325e351-f4c5-4e61-8292-5660774b2fdd.png)
**アクセスポイントが非常に多い**

これを1つ1つ探索するのは骨が折れるので、SSIDのフィルタ機能を使いましょう。公共アクセスポイントということで、公式サイトあたりにSSIDは公開されていると判断し、検索を行ったところ、[Do you offer WiFi?](https://contact.louvre.fr/hc/en-gb/articles/12853523479453-Do-you-offer-WiFi)というページがありました。そこを見てみると、どうやら **Louvre_Wifi_Gratuit** というSSIDらしいということが分かりました。また、問題文によると2025年2月28日に収集されているという記述があるのでそこでもフィルタをかけてみると
![スクリーンショット 2025-06-09 174438.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/40dbb2e1-853a-441b-8bcd-7bab8ddb58c0.png)
**なにもない...**

ひとまず、どちらかのフィルタではじかれていると判断し、確実性の高い日付のフィルタを残して再検索しました。数は多いですが拡大すれば地図上にSSIDが表示されるので、それっぽいSSIDを1つ1つ調べていくことにしました。
![スクリーンショット 2025-06-09 175322.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/875c4c7f-ef24-4a5a-9300-7eedfda6e23f.png)
**見つけた！**

探索を始めてから5分ほどで見つけました。おそらく、SSIDの先頭に"*"がついていたことが原因と思われます。時期も条件と合致しています。ただし、Flagはベンダーの名前なので、BSSIDを使ってベンダーを特定しましょう。私はたまたまOUIとベンダの対照表をもっていたため、それを使用しましたが、おそらく検索できるページもあると思います。結果、ベンダは**Hewlett Packard Enterprise**と分かりましたので、それがflagとなります。


## geo

### convenience (462pt / 63 solves)

```
青森県内に、公園とコンビニ、スーパーマーケットが互いに約100m圏内に存在する場所がいくつかある。
また、これはOpenStreetMapで確認可能である。
この条件を満たす 公園 のうち、最南端 のものについて、OpenStreetMap上での Way Number を答えよ。
なお、「公園」の定義は、OpenStreetMap上で "park" (leisure=park) と分類されているものに準拠する。
```

この問題では、クエリに基づいてOpenStreetMapのデータを抽出し、地図上で結果を確認できるツールである、[overpass turbo](https://overpass-turbo.eu)というサイトを使用しました。ここでは、青森の公園・スーパーマーケット・コンビニエンスストアを表示するクエリを作成しました。
作成したクエリと、実行結果は以下の通りです。
```
[out:json][timeout:300];
area["name"="青森県"]["admin_level"="4"]->.aomori;

(
  way(area.aomori)[leisure=park];
  relation(area.aomori)[leisure=park];
)->.parks;

(
  way(area.aomori)[shop=convenience];
  node(area.aomori)[shop=convenience];
)->.convenience;

(
  way(area.aomori)[shop=supermarket];
  node(area.aomori)[shop=supermarket];
)->.supermarket;

.parks out geom;
.convenience out geom;
.supermarket out geom;
```
![スクリーンショット 2025-06-09 181229.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/a2fa3a4a-c24b-4553-b2a1-b23c3fd86013.png)

ここから条件分岐でさらに絞るクエリを実行できるとよかったのですが、うまくいかなかったということと、最南端を探すいう比較的手間が少ないものだったので手作業でやりました。その結果、八戸市の**上沢巻目公園**ということが分かり、そこのway番号がflagとなりました。
![スクリーンショット 2025-06-09 182028.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/ef68d56c-8c1f-42bc-8ba9-74fb13f30661.png)

## transportation

### 36_years_ago (347pt / 125 solves)
```
このニュース動画に映っている航空機に、1989年8月時点で割り当てられていたトランスポンダのMode Sコードを16進数表記で答えてください。
```
[ニュース動画](https://www.youtube.com/watch?v=OvR2O_Vpwc0)はセスナの事故の動画でした。この動画から飛行機の機体番号が**JA4098**ということが分かり、任意の航空機データベースで調べると製造番号が17276610ということが分かります。機種(Cessna 172P)と製造番号をもとに調べたところ、[airport-data.com]というページがヒットし、そこのMode S(ICAO24)Codeに載っていたAD9D6AというコードがFlagでした。

### air2air (495pt / 24 solves)
```
この動画は2025年3月11日（現地時間）に撮影された。遠くに映っている航空機のコールサインと機体記号を答えよ。
（撮影者が搭乗している航空機ではない）
```
[この動画](https://www.youtube.com/watch?v=wUa5TGj6uxc)は、機内から撮られた映像でした。この動画から、主に4つのことが分かります。
#### 遠くに映っている航空機について
動画から、遠くに映っている航空機は、撮影者が搭乗している航空機の左側かつ高度が少し高い場所にいるということが分かります。

#### 航空会社
まず1つ目は、翼の先端のマークについてです。
![スクリーンショット 2025-06-08 012253.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/2de32ad5-b831-4fe9-8abd-f5812bb7d1f9.png)

ここから、この飛行機は台湾の**スターラックス航空**ということが分かります。

#### 座っている座席と機材
動画後半には、座席のディスプレイらしきものを撮影しています。ここから、撮影者は**40A**という座席に座っていると考えられます。[公式サイトの座席表](https://www.starlux-airlines.com/ja-JP/experience/walk-into-starlux/our-fleet/)を見てみると、40Aという座席が翼の付近にある機材は、**AIRBUS A350-900**となり、撮影者はこの機種の旅客機に搭乗していたと推測されます。

#### 撮影者が搭乗している航空機の位置と目的地
座席のディスプレイらしきものの映像から、この飛行機がTPE(台北桃園空港)を目的地としていること、沖縄県付近を飛行していること、到着まで約1時間ほどであることが分かります。

####
これらの情報をもとに、[Flightradar24](https://www.flightradar24.com)を使用し調査を行ってみると、
![スクリーンショット 2025-06-09 195545.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/9a7e2b29-da4e-4d02-9b61-551b8a044c46.png)

スカイマークの航空機(コールサイン: SKY8026 登録番号: JA73NY)ということが分かり、これがflagとなります。

### listen (473pt / 53 solves)
```
この航空管制のやり取りが録音された空港のICAOコード（4レターコード）を答えよ。
```
音声をもとに調査を行うという珍しい問題です。実際の音声は添付しませんが、音声をもとに行った書き起こしを添付します。(出典: LiveATC CYEG-Del-Gnd-Misc-Jan-18-2025-0500Z)
※公式の書き起こしではなく、編集ソフトによる書き起こしなので不正確な場合があります。
```
Alpha two
by Alpha Alpha Delta. We
bring your discussion
with you
seven
eight. Alpha
two Alpha Alpha Delta and we
want
to
go around.
It's
with you.
Turbulence number 295 is touching down on 02
and contact departure on 13365 Airborne
1340 at 21,
clear takeoff from way 3-0
13365 Airborne, clear takeoff 3-0
with permission
Yeah, if I get anything about reporters...
Continue down
to
problem
148, didn't contact me
Continue number one in contact with ground
21-7 after border 289.
Papa, Alpha and 1183 Holding, southwest at 177.
Air Canada 248 coming on at Yankee
for two.
3057, your number one,
and I'll be trying to get it to
pressure.
Still requesting a position from 852 to
pass 51.
Hello, what's that? 177, Alpha holding
short 02 ready.
.................................................
Tower contact departure 13365 airborne
135017 gusting 23 clear takeoff runway 02.
13365 airborne clearance for takeoff runway
02, what's that? 177.
To porter
289 via bravo to the gate, to the airport
porter 289.
Okay, that's how they check through there.
It's clear the line runway
02.
```
書き起こしで得られた情報をみると、**AirCanada248便**と**Porter289便**が登場していることが分かります。
この2つの路線について調べてみると、AirCanada248便は**バンクーバー国際空港からエドモントン国際空港**を結ぶ路線であり、Porter289便は**オタワ国際空港からエドモントン国際空港**ということが分かりました。つまり、両方の路線が乗り合わせる、エドモントン国際空港の無線であり、エドモントン国際空港のICAOコードである**CYEG**がflagとなります。
### sanction (375pt / 112 solves)
```
2024年10月25日、制裁下にあるロシア船籍のRORO船「ANGARA」がある港湾に停泊していることが衛星画像で確認された。
停泊位置を答えよ。
```
この船は北朝鮮製兵器や朝鮮人民軍の兵士を輸送した船としてロイター通信などが報道していた船ですね。外務省も言及していた記憶があり、[資料](https://www.mofa.go.jp/files/100853978.pdf)を確認してみると、
![スクリーンショット 2025-06-07 220350.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/85aba784-3299-416d-816f-0d7d6fdee9eb.png)

このようにちょうど該当日時に羅津港で停泊している衛星写真があったので、ここの座標がflagとなります。
余談ですが、[ロイターの報道](https://www.reuters.com/graphics/UKRAINE-CRISIS/NORTHKOREA-RUSSIA/lbpgwymmxpq/)に10月26日の衛星画像があり、こちらも羅津港に停泊するANGARAの画像だったのですが、こちらは微妙に場所が違っており、良い引っ掛けになっていました。
## military
writeupの前に、このセクションでは、[某団体](https://deepdive.or.jp)の人たちのにおいがしてアツかったです。
### object (359pt / 120 solves)
```
69.216246, 33.378242 には大きな構造物が存在する。
この構造物のプロジェクト番号および、構造物の名称（固有名詞）を 現地語 で答えよ。
```
この座標をgoogle mapsで検索してみると以下の画像のようなものがありました。
![スクリーンショット 2025-06-07 120821.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/e813e9c8-9a29-4ac8-bf03-2dc9cce5db21.png)

何かのドックのように見えますが、名称が分からなかったのでとりあえずYandexで画像検索をしてみたところ、[LIVEJOURNAL](https://militaryrussia.livejournal.com/424866.html)というページがヒットし、この構築物の名称は**ПД-72**ということが分かりました。そして、名称で検索をすると[Водный транспорт](https://fleetphoto.ru/vessel/83897/)というサイトがヒットします。このサイトから、この構造物のプロジェクト番号が**13560**と分かり、flagとなります。

### worker (499pt / 12 solves)(First Blood!!!)
```
"object" の問題で示された構造物で仕事をしていた1964年生まれのある人物は、Akhtubinskに居住しているとされる。
この人物が1987年～2009年にかけて勤務していた組織のOGRNを答えよ。
```
**object**の続きもののようですね、**OGRN**というのはロシアの法人登録番号のようです。
とりあえず、Yandexに"ПД-72","13560","1964"といった形で今まで出てきた要素を入れて検索をしてみると、[NAMEBOOK.CLUB](https://i.namebook.club/military/rossiya/13090-olenya-guba-pd-72/)というサイトが見つかったので、プロジェクト番号が違っているのが気になりますが、問題の対象の属性に合致した人物がいたのでこのまま進めました。この人物の経歴を見ると、外套の時期に**26273**という組織に所属していたことが分かります。これをもとに、組織名+OGRNで検索をしてみると、[Licexpert](https://licexpert.ru/company/1023000507936)というページにて、ОГРН(OGRN)が**1033000000747**ということが分かるので、これがflagとなります。

### radar (481pt / 45 solves)
```
画像に写っているものは、福建省に存在する、中国人民解放軍東部戦区のレーダー施設であると考えられる。
公式な情報は明らかにされていないものの、オンライン上で中国の軍事を分析している人々がこの基地を運用する部隊と分隊の番号を特定しているらしい。
もちろん、オンライン上の情報だけを鵜呑みにするわけにはいかないが、ひとまず検討する価値はあるだろう。
その情報を探り当て、教えてほしい。
```
画像は以下の通りです。
![radar.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3824089/697f251d-f66b-4bc5-81a2-cdb263301dbf.png)

この画像をYandexにて画像検索をしたところ、[The state of the early missile warning and space control system in China](https://en.topwar.ru/164418-sovremennoe-sostojanie-sistemy-rannego-raketnogo-preduprezhdenija-i-protivoraketnoj-oborony-i-sredstv-kontrolja-kosmicheskogo-prostranstva-v-knr.html)というページがヒットし、問題の画像と近い画像と、レーダの名称が**ZGRLS**ということ、そして座標(**25.797523, 119.612722**)を手に入れることが出来ました。

ここからしばらく検索を重ねたものの、それっぽい情報は出てこず詰まっていたところ、[軍事大辞典 O](https://aobamil.sakura.ne.jp/mil-dic/O.html)によると、**ZGRLS**はロシア語略であり、英語圏では**OTH**(Over-The-Horizon radar)ということが分かりました。

そこで、クエリを変えて検索をしばらく行うと、[中国人民解放軍のレーダと・SAMを運用している部隊を列挙したページ](https://jjamwal.in/yayavar/chinese-armed-forces-orbat-part-7-radars-and-sams/)がヒットしたので、そこで、先ほど得た座標をもとにページ内検索をしてみたところ、部隊番号が**92985**であり、分隊番号が**84**であると分かるので、それがflagとなります。

# おわりに
今回は、DIVER OSINT CTF 2025で私が解いた9問のWriteupを紹介しました。
今年も非常に幅広いジャンルの問題が出題され、終始楽しみながら取り組むことができました。

個人的には、得意のMilitary分野で全問正解し、さらに"worker"問題でFirst Bloodを獲得できたことがとても嬉しかったです。(開始後すぐ問題に取り掛かったということもありますが...)

一方で、他の分野ではまだまだ知識不足なことも多く、まだまだ勉強が必要だと感じました。

最後に、このような素晴らしい問題と挑戦の機会を提供してくださったDIVER OSINT CTFの運営の皆様と、ともに参加したteappのメンバーに心から感謝申し上げます。また来年も、さらに腕を磨いて参加したいと思います。

最後までお読みいただき、ありがとうございました。