DIVER OSINT CTF 2024 writeup

# はじめに
先日、DIVER OSINT CTFに参加してきました。せっかくなのでwriteupを書いてみました。


## DIVER OSINT CTFとは
- 開催日程：2024/06/08 12:00〜 2024/06/09 12:00
- 開催形式：オンライン、Jeopardy形式

:::note info
Jeopardy形式とは、一問一答形式で、問題ごとに点数が割り振られており、最終的な合計点数により順位が決まる出題形式。
:::


https://ctfd.diverctf.org/

## 参加背景
参加しようと思ったのは、Xでこのポストを見かけたのがきっかけです

https://x.com/ryusei_ishika/status/1799284948266103146

✅Twitter歴約10年
✅ネトスト得意
しっかりあてはまってました笑

OSINTって聞いたことはあるけど、もしかして適性ある...？
ということで、急遽参加してみることにしました！

## 結果
順位：150th
スコア：810ポイント
正解数：9問

![スクリーンショット 2024-06-10 14.08.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/25e42eef-9701-b7f2-0c99-d0b9ff59d968.png)

:::note warn
1人チームのため、これが個人成績です。
:::

# writeup
## welcome
### 問題
![スクリーンショット 2024-06-10 17.33.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/b69ed3aa-1010-02f2-03f8-937210696937.png)
### 解法
![スクリーンショット 2024-06-10 17.35.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/e9894172-2bbb-5913-2f74-ea02abac2fa2.png)
[Rules](https://ctfd.diverctf.org/rules)の一番下の見ると、
Flag発見！
![スクリーンショット 2024-06-10 17.40.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/92b0a79c-56cc-0394-aa93-927b14baa78a.png)

### Flag
Diver24{ganbarou!}

## number (misc)

### 問題

![スクリーンショット 2024-06-10 17.42.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/4344d401-c747-dfa2-27d4-762bb26298f8.png)


### 解法
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/490ec527-7524-366a-2845-1eb179756000.png)
画像より車のナンバーは[外-4906]であることがわかる。
🔍「車のナンバー 外 意味」と検索すると、以下のサイトより外交官ナンバーであることがわかった。
 [ナンバープレートの役割や取り付ける意味とは？ | JAF クルマ何でも質問箱](https://jaf.or.jp/common/kuruma-qa/category-construction/subcategory-supplies/faq012#:~:text=%E5%A4%96%E5%8B%99%E7%9C%81%E3%81%8C%E4%BA%A4%E4%BB%98%E3%81%99%E3%82%8B%E3%83%8A%E3%83%B3%E3%83%90%E3%83%BC%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88&text=%E3%81%93%E3%81%AE%E3%80%8C%E5%A4%96%E4%BA%A4%E5%AE%98%E3%83%8A%E3%83%B3%E3%83%90%E3%83%BC%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88,%E4%BB%A3%E8%A1%A8%E9%83%A8%E3%82%92%E8%A1%A8%E3%81%97%E3%81%BE%E3%81%99%E3%80%82)
 
🔍「外交官ナンバー 4906」と検索した。[外交官車両ナンバー一覧表](https://warmheart0159.hatenablog.com/entry/2017/06/06/162406)より、49はクエートであることがわかった。つまり、クエート領事館の所有車両であるため、クエート領事館の固定電話番号を調べた。
[クウェート大使館のHP](https://www.kuwait-embassy.or.jp/)より、固定電話番号は03-3455-0361であることがわかった。

### Flag
Diver24{0334550361}

## ospray1 (military)
### 問題
![スクリーンショット 2024-06-10 18.14.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/1e5c1a45-6df0-b48a-d49d-69b37da1736c.png)
### 解法
「屋久島 オスプレイ コールサイン」といったキーワードを入力しXで検索していると、

https://x.com/oldconnie/status/1730235904592134469

にコールサイン、機体番号ともに記載されていた。
機体番号：12-0065
コールサイン：GUNDAM22

### Flag
Diver24{12-0065_GUNDAM22} 

## ospray2 (military)
### 問題
2024年2月15日、ある米軍基地でこの事故に関する追悼式典が実施された。16:46:37ごろ、その式典はどこで実施されていたか。
OpenStreetMapのWay番号で答えよ。
Flag例: Diver24{123456789}

Hint：基地全体ではなく、基地内の特定の区画・地点を示してください。
### 解法
最初は日本語で検索していたのですが、出てこないので英語で検索し始めました。すると、

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.」
・日没の30分前ということはだいたい16:30くらい。→16:46:37ごろにあてはまるのでは？
・場所は、横田サムライ・フィットネス・センターの外にある陸上競技場

サムライ・フィットネス・センターは横田基地の中にあることがわかりました。
外にある陸上競技場のマップは出てこないので、
まず、OpenStreetMapでサムライ・フィットネス・センターをGoogleMapの形や位置と照らし合わせて探しました。その後、陸上競技場をその周辺から見つけ、Way番号を特定しました。

### Flag
Diver24{810021666}

## office (introduction)
### 問題
ファイルから得られるFlagを入力してください。
Input the flag obtained from the file.

添付ファイル: mudai.odt
### 解法
mudai.odtをダウンロードし、開いてみると、Wordで展開され「Welcome to DIVER OSINT CTF 2024」という文字が出てきました。ですが、フラグは表示されません。
![スクリーンショット 2024-06-24 15.19.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/971bdfb4-b3e8-b774-6ad7-50916e5cdbc9.png)
odtという拡張子について調べました。

https://naga-note.info/blog/2018/04/18/java/odtfile_check/

という記事ができたので、解凍してみることにしました。

https://support.apple.com/ja-jp/guide/terminal/apdc52250ee-4659-4751-9a3a-8b7988150530/mac

より、
`% tar -xvf mudai.odt`で解凍しました。
![スクリーンショット 2024-06-24 15.18.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/e68f6a85-c195-c6c2-d3c8-d719dbb78bae.png)
すると、複数のファイルが圧縮されていたことがわかります。
Thumbnails/thumbnail.pngにフラグがありました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/76034029-14e1-d48a-8ab7-13b505cc484b.png)

### Flag
Diver24{World Ocean Day}

## dream (introduction)
### 問題
画像に写っているパイプオルガンがある施設の郵便番号を答えなさい。
Flag形式: Diver24{123-4567}

![dream.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/d03d372b-cf33-e481-61a2-e4e58cf4a31f.jpeg)

### 解法
Google画像検索したところ、

https://ameblo.jp/jissi/entry-12316645389.html

より、ポップタウン住道オペラパークという場所にあることがわかった。
Googleで検索すると郵便番号が出てくる。
![スクリーンショット 2024-06-24 16.56.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/686f64f9-8ea2-cc78-f51a-0e994e09732b.png)

### Flag
Diver24{574-0046}

## serial (introduction)
### 問題
これらの動画の背景に映っている航空機のシリアル番号は何か？ シリアル番号が123456の場合、Flagは Diver24{123456} となる。

- https://www.tiktok.com/@ana_allnipponairways/video/7318648417620741377
- https://www.tiktok.com/@ana_allnipponairways/video/7338422699301145857

### 解法
動画をみると、航空機には「JA222A」という番号が書かれていることがわかる。
![スクリーンショット 2024-06-24 17.20.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/2e4bcafe-5408-d57d-6c26-e01a04043950.png)

🔍「JA222A シリアル番号」と検索すると、

https://flyteam.jp/registration/JA222A

より、9580であることがわかる。

### Flag
Diver24{9580}

## imagetrack (geo)
### 問題
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/35693373-08c8-4bcd-81ea-146bf811a275.png)
画像の撮影された郷土料理屋の店名を答えよ。
Flag形式: Diver24{店名}

### 解法
Google画像検索にかけると、

https://www.openair.beer/

というところのビールだということがわかりました。
ただ、ここが運営しているのはタップルームで、郷土料理屋ではない。
Google検索の限界を感じたので、SNS検索に移りました。
最初Instagramのアカウントを見ていきました。そこで郷土料理屋のことは発信されておらず、タグ付けされた写真を見ても似たようなものはなかったです。続いて、Facebookのアカウントから、過去の投稿を見ていきました。

https://ms-my.facebook.com/world.one.group/photos/a.224107250949947/5925976714096277/?type=3

の対象店舗の欄に「郷土料理からす」を発見

### Flag
Diver24{郷土料理からす}

## leak (crypto)
### 問題
先月、日本の会社で大規模なBTCの不正流出が起きた。
流出先となっているウォレットアドレスを答えよ。
Flag形式: Diver24{ウォレットアドレス}
### 解法
すぐDMMのビットコイン流出のことだとわかりました。
Googleで「dmm ビットコイン 流出ウォレットアドレス」と検索して出てきたこの記事に記載されていました。

https://note.com/valuesharing/n/ncfdf4ddfa0b6

### Flag
Diver24{1B6rJRfjTXwEy36SCs5zofGMmdv2kdZw7P}

## youtuber (transportation)
※flagは一致していたはずなのですが、正答判定されなかったので一応書いておきます

### 問題
2023年、あるYouTuberが日本で無賃乗車や無銭飲食を行い、その様子を投稿したことで問題となった。
彼は日本である列車に無賃乗車をしていたところ、九州地方のある駅で一度捕まったが、そのまま逃走して別の列車に再び無賃乗車をした。
彼が捕まった駅と、乗り継いだ列車の列車番号を教えてほしい。なお、列車番号は時刻表に掲載されている形式で回答せよ。

Flag形式: Diver24{駅名_列車番号}
例えば、折尾駅で捕まり、456Mという列車に乗り換えた場合、Diver24{折尾_456M} となる。

### 解法
Googleでこの問題について調べると、当該の動画はすでに削除されており、新幹線に無賃乗車したことがわかった。

https://news.yahoo.co.jp/articles/bc10510d5fed2d71ed80c26b7c6b64eb80aefc16

によると、新鳥栖駅で乗り継いだことがわかった。
「youtuber 無賃 新幹線」とX上で検索すると、

https://x.com/tkzwgrs/status/1716607679924486375

という動画が見つかる。
動画内で、新大阪行きの「さくら572」という新幹線に乗り継いでいることがわかる。

https://timetable.jr-odekake.net/train-timetable/104121?date=20240217

より、さくら572の列車番号は「527A」であることがわかる。

### Flag
Diver24{新鳥栖_572A}

# 公式writeup
https://github.com/diver-osint-ctf/writeups

# おわりに
セキュリティの知識がない私でもとても楽しめました。
これを機にOSINTに興味を持ったため、この本も読んでみたいと思いました。

「サイバー攻撃から企業システムを守る！　OSINT実践ガイド」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3494142/d6ef5e2b-9b53-ad16-e4a6-e5073fc0056d.png)