Diver OSINT CTF Writeup

[Diver OSINT CTF](https://x.com/DIVER_OSINT_CTF) に参加しました．
途中から Crypto CTF に移ったので，半日ぐらいしか参加できませんでしたが，33 位でかなり頑張ったかなと思います．
OSINT だけなので探しつかれましたが，こんな情報調べられんの？みたいなこともあり結構面白かったです．

![ctfd.diverctf.org_team.dim.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/e1c235bb-6d46-0aad-f6fd-dc7de6dea2d4.png)

# misc
## number
![vehicle.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/d6a80d6b-4486-d6b2-756b-93fd499222a1.jpeg)

```
この車両の持ち主に連絡を取りたい。電話番号を調べてもらえないだろうか。
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

Unlock Hint for 0 points
携帯電話ではなく、固定電話である。It is not a mobile phone. It is a landline phone.
```
外交官車両のナンバーは四桁の場合，上位二桁が国を指すらしい．

[外交官車両ナンバー 一覧表つくってみたよ。外ナンバー、青ナンバー(ブルーナンバー)](https://warmheart0159.hatenablog.com/entry/2017/06/06/162406) を見ると 49 はクエート

[クウェート大使館の電話番号](https://www.mofa.go.jp/mofaj/link/emblist/middleeast.html#09)

```
Diver24{0334550361}
```

## label
![label.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/e3bdaff6-10a1-36f4-a9aa-41841b17f0e3.jpeg)
```
この荷物の宛先として考えられる施設の郵便番号を教えてほしい。
例えば在日アメリカ大使館が答えの場合、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}.
```
海外の荷物を追跡するサイトとかで ```202406081546475424``` を検索しても何も見つからない．

```横長 QR コード``` で調べてみると rMQR コードであることがわかる．
[デンソーウェーブ、細長く狭いスペースにも印字できる 長方形型の新しいQRコード「rMQRコード」を開発](https://www.denso-wave.com/ja/adcd/info/detail__220525.html)

[これ](https://www.denso-wave.com/ja/system/qr/product/reader.html) で読み込める．

![Screenshot_20240608-153355.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/e69050fe-cf0f-4d0f-b659-eea2d2921c2d.png)!

山形県鶴岡市馬場町なので
```
Diver24{997-0035}
```

## timestamp
```
"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.
```

以下の画像の航空機
[GId5HlDbsAExFX5.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/f4633176-523b-df3a-7cf5-c2cc12007896.jpeg)

```h-6 爆撃機 防衛省``` で検索すると，[中国軍機及びロシア軍機の動向について](https://www.mod.go.jp/js/pdf/2023/p20231214_02.pdf) が出てくる．

こんな感じの資料があるとみて，```防衛省 報道発表資料``` で検索すると [報道発表資料 | 統合幕僚監部](https://www.mod.go.jp/js/press/) が見つかるので，問題の日付を探すと [2024年03月12日 中国軍機の動向について(Y-9,H-6 他)](https://www.mod.go.jp/js/pdf/2024/p20240312_01.pdf) がある．

撮影された日時が明示されているわけではないので，PDF から画像を抜き出す．
```
pdfextract p20240312_01.pdf
```

元の画像の右下に日時がある．
![image_9.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/0d0cba08-6101-2723-7273-ba164a0c33ed.jpeg)

```
Diver24{2024-03-12T15:33}
```

## howmany
![howmany1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/93173ff7-ee44-ded5-86fc-083270e1ec35.jpeg)
![howmany2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/52a2c54d-442f-6ec7-25d9-6a64b5a9bf3f.jpeg)
![location.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/16d9d40d-8fd2-5e92-bed0-7fb9b29a993a.png)
```
画像の通り、2つのマンホールがある。2024/05/30 23:46 (JST) 時点で、この2つのマンホールの間で何台の赤い自転車を返却できたと考えられるだろうか。また、返却地点のIDは何だろうか。
Flag形式: Diver24{台数_ID}
例えば、赤い自転車を10台返却でき、その場所のIDがa10012bであった場合、FlagはDiver24{10_a10012b}となる。

As shown in the image, there are two manholes - how many red bicycles could have been returned between these two manholes at 23:46 (JST) on 2024/05/30? Also, what is the identifier of this returning point?
Flag format: Diver24{number of bicyecle can be returned_ID}
For example, if 10 red bicycles could be returned and the ID of that place is a10012b, the Flag shoule be Diver24{10_a10012b}.

Unlock Hint for 0 points
location.pngは、上の方が北です。location.png is a north-up map.
```

画像検索すると東京 23 区のマンホールであることがわかる．

[東京都下水道局のサイト](https://www.gesui.metro.tokyo.lg.jp/business/b1/designmanhole/togesui/index.html) に
```
東京23区のマンホールは管理図で把握しており、左の３つでマンホールの位置、右の１つで敷設年度が分かるようになっています。
```
とある．

画像のマンホールは
```
62 0I 3F
```

[東京番ホールマップ](https://ekikaramanhole.whitebeach.org/ext/0A0A/) という番号から位置を検索できるサイトがある．

ここで調べると新宿駅の近くであることがわかる．
![Screenshot_20240608_163419.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/b2c944c8-df65-5f94-2a3c-577263bfb12e.png)
([検索結果](https://ekikaramanhole.whitebeach.org/ext/0A0A/?ms=google&c=y&s=62&n=0I&e=3F&order=cap2id&id=))

このあたりでシェアサイクルのステーションを探す．

```東京 シェアサイクル``` で検索すると赤い自転車は docomo のシェアサービスであることがわかる．

https://docomo-cycle.jp/tokyo/

このあたりで三枚目の画像と一致する場所は新宿区役所本庁舎．
![Screenshot_20240608_163605.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/21245eba-48ee-ff37-cc30-8cabc24fb599.png)

色々検索していると Google map でもドコモのシェアサイクルのリアルタイムの情報が見られるとかあるので，API がないか探すと公共交通オープンデータセンターの [ドコモ・バイクシェア バイクシェア関連情報 / Bikeshare information of DOCOMO BIKESHARE, INC.](https://ckan.odpt.org/dataset/c_bikeshare_gbfs-d-nationwide-bikeshare1) というのが見つかる．

ただし，調べてみたけど最新の情報しか得られなさそう．

アーカイブがないか探すと [archive.today に station_status のアーカイブ](https://archive.md/mGgLI) があり，時刻も問題と一致する．

```
{"is_renting":true,"station_id":"00010184","is_installed":true,"is_returning":true,"last_reported":1717080364,"num_bikes_available":4,"num_docks_available":41},
...
,"version":"2.3","last_updated":1717080364}
```
```
Diver24{41_00010184}
```

# military
## osprey1
```
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.
```

```屋久島沖米軍オスプレイ墜落事故 コールサイン``` で検索するとコールサインが ```ガンダム22``` であったことがわかる．

[このオスプレイの詳細情報](https://aviation-safety.net/wikibase/348462)
```
Diver24{12-0065_GUNDAM22}
```

# introduction
## 246
![246.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/41ca3149-57bc-5e7a-227e-4dc6c161d0b6.jpeg)
```
画像が撮影された場所から最も近い交差点名を答えよ。
Flag形式: Diver24{交差点名}

What is the name of the intersection closest to where the image was taken?
Flag format: Diver24{intersection name}
```
これは関門橋．

右に曲がると国道 246 号線なので [ここ](https://www.google.com/maps/@33.9726659,130.9686999,3a,46.9y,244.92h,90.64t/data=!3m10!1e1!3m8!1sLxZU8tTZB0tQB-0MONRsOg!2e0!6shttps:%2F%2Fstreetviewpixels-pa.googleapis.com%2Fv1%2Fthumbnail%3Fpanoid%3DLxZU8tTZB0tQB-0MONRsOg%26cb_client%3Dmaps_sv.share%26w%3D900%26h%3D600%26yaw%3D244.91795389873315%26pitch%3D-0.636865537049573%26thumbfov%3D90!7i16384!8i8192!9m2!1b1!2i35?coh=205410&entry=ttu)．

```
Diver24{前田}
```

## office
```
ファイルから得られるFlagを入力してください。
Input the flag obtained from the file.
```
OpenDocument 形式のファイルなので，unzip する．

![thumbnail.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/2a9560ce-6cb8-1010-ae11-51a865053806.png)

```
Diver24{World Ocean Day}
```

## dream
![dream.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/0d21c3bb-6114-ebed-234c-52829d2a82e9.jpeg)
```
画像に写っているパイプオルガンがある施設の郵便番号を答えなさい。
Flag形式: Diver24{123-4567}

Give the postal code of the facility with the pipe organ shown in the image.
Flag format: Diver24{123-4567}
```
画像検索するだけで見つかる
![Screenshot_20240608_131626.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/e3209661-52a9-8f0a-7f06-dab91d746482.png)

ポップタウン住道 オペラパーク
```
Diver24{574-0046}
```

## serial
```
これらの動画の背景に映っている航空機のシリアル番号は何か？ シリアル番号が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}.

https://www.tiktok.com/@ana_allnipponairways/video/7318648417620741377
https://www.tiktok.com/@ana_allnipponairways/video/7338422699301145857
```
動画の中の機体に ```JA222A``` と書かれてある．
![Screenshot_20240608_132053.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/f710054f-d986-c765-5499-2c21d5400589.png)

JA222A で検索．
[JA222A 航空機登録情報](https://flyteam.jp/registration/JA222A)

9580 がシリアル番号
```
Diver24{9580}
```

## ad_directiare
![ad_directiare.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/bc0a06af-3249-d299-ada9-b7213c156cd7.jpeg)
```
この名刺の人物が、東京出張時に食べた昼ご飯の値段を答えよ。
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}
```
名前とか誕生日で検索するとこの人のっぽい X のアカウントが見つかる．
https://twitter.com/0727Yone

ここには何の情報もない．

画像から Gmail のメールアドレスがわかっているので，[GHunt](https://github.com/mxrch/GHunt) を使う．

```
└─< ghunt email yone.jun.0727@gmail.com

     .d8888b.  888    888                   888    
    d88P  Y88b 888    888                   888    
    888    888 888    888                   888    
    888        8888888888 888  888 88888b.  888888 
    888  88888 888    888 888  888 888 "88b 888    
    888    888 888    888 888  888 888  888 888    
    Y88b  d88P 888    888 Y88b 888 888  888 Y88b.  
     "Y8888P88 888    888  "Y88888 888  888  "Y888 v2

             By: mxrch (🐦 @mxrchreborn)
       Support my work on GitHub Sponsors ! 💖
    

         > GHunt 2.2.0 (Wardriving Edition) <        

🎉 You are up to date !

[+] Stored session loaded !
[+] Authenticated !

🙋 Google Account data

[+] Custom profile picture !
=> https://lh3.googleusercontent.com/a-/ALV-UjVKvCkQbkuXAjqFES_aWLSNAi6QXEnYiTtpf8dChTjrmfqwDr8

[-] Default cover picture

Last profile edit : 2024/05/18 19:17:06 (UTC)

Email : yone.jun.0727@gmail.com
Gaia ID : 104607974422086075165

User types :
- GOOGLE_USER (The user is a Google user.)

📞 Google Chat Extended Data

Entity Type : PERSON
Customer ID : Not found.

🌐 Google Plus Extended Data

Entreprise User : False

🎮 Play Games data

[-] No player profile found.

🗺️ Maps data

Profile page : https://www.google.com/maps/contrib/104607974422086075165/reviews

[Statistics]
Reviews : 1
Photos : 1
Answers : 6

[Reviews]
[+] Average rating : 4/5

[Costs]
> 0% Inexpensive (0)
> 0% Moderately expensive (0)
> 100% Expensive (2)
> 0% Very expensive (0)

[+] Average costs : Expensive

Target's locations preferences :

🏨 Restaurant [2]
- Unagi restaurant (2)
- Japanese (2)
- Seafood (2)
                                                   
[+] Probable location (confidence => Okay) :
- 千代田区, 日本

🗓️ Calendar data

[+] Public Google Calendar found !

Calendar ID : yone.jun.0727@gmail.com
Calendar Timezone : Asia/Tokyo

[+] 2947 events dumped ! Showing the last 5 ones...

╔══════════════╤═════════════════════╤═══════════════════╗
║     Name     │   Datetime (UTC)    │     Duration      ║
╟──────────────┼─────────────────────┼───────────────────╢
║     移動     │ 2024/06/03 08:00:00 │      1 hour       ║
╟──────────────┼─────────────────────┼───────────────────╢
║  帰：飛行機  │ 2024/06/03 09:00:00 │ 1 hour 30 minutes ║
╟──────────────┼─────────────────────┼───────────────────╢
║     移動     │ 2024/06/03 10:30:00 │ 1 hour 30 minutes ║
╟──────────────┼─────────────────────┼───────────────────╢
║ 研修事後課題 │ 2024/05/29 04:45:00 │      3 hours      ║
╟──────────────┼─────────────────────┼───────────────────╢
║     Hehe     │ 2025/06/08 03:00:00 │      1 hour       ║
╚══════════════╧═════════════════════╧═══════════════════╝

🗃️ Download link :
=> https://calendar.google.com/calendar/ical/yone.jun.0727@gmail.com/public/basic.ics
```

[Google マップのクチコミ](https://www.google.com/maps/contrib/104607974422086075165/reviews/@35.6818256,139.7688062,17z/data=!3m1!4b1!4m3!8m2!3m1!1e1?entry=ttu) を見ると，うな重を食べている．

```
Diver24{4400}
```

# geo
## chiban
![chiban.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/7d88e979-73f4-6940-6701-51c376a15efb.jpeg)
```
画像の中央に写っている道路の地番は何か。
たとえば住所が 仙台市宮城野区二十人町 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.
```
```サンディ 7号店``` で調べても見つからないので，ぎょうざの満州から調べると茨木市駅の東にある道であることがわかる (大阪ぽかったから大阪から調べるとすぐ見つかった)．

[地番検索くん](https://chiban-kensaku.com/) で検索すると ```筆界未定地-6``` であることがわかる．
![Screenshot_20240608_185714.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/a17d4860-969e-9ffd-8473-64aae4493b32.png)

```
Diver24{筆界未定地-6}
```

# crypto
## leak
```
先月、日本の会社で大規模な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}
```
色々調べると [【緊急速報】DMMビットコイン480億円相当を流出の原因を探る](https://defire.jp/dmm-bitcoin-hack-reason/) というサイトがある．

```
Diver24{1B6rJRfjTXwEy36SCs5zofGMmdv2kdZw7P}
```

# history
## promoter
![promoter.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/2e17db67-0c3f-6175-2bb8-8f3f9317786a.jpeg)
```
画像に写っている池沼を開拓した発起人の父親の命日を答えよ。
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)
```
画像検索すると入鹿池であることがわかる．

[入鹿池](https://ja.wikipedia.org/wiki/%E5%85%A5%E9%B9%BF%E6%B1%A0) の Wikipedia に ```江崎善左衛門を筆頭とする入鹿六人衆``` とあるので，その父である ```善左衛門宗度``` について調べれば良い ([江崎善左衛門](https://kotobank.jp/word/%E6%B1%9F%E5%B4%8E%E5%96%84%E5%B7%A6%E8%A1%9B%E9%96%80-1058804))．

[この資料](https://www.jsidre.or.jp/wordpress/wp-content/uploads/2016/03/49-7.pdf) の最後のページにある．

```
Diver24{1627/11/13}
```

## paddy
![gsimap.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/4d69a71f-b068-fa7a-00c6-2cb8e2d7d192.png)
```
この地域では地形の人工的な大規模改変が2回行われたという。郡司としてこれにかかわった人物の名は？
日本語表記で答えよ。
Flag形式: Diver24{人名}

The area has undergone two large-scale man-made alterations to the terrain. What is the name of the person involved in this as a local governor (郡司)?
Answer in Japanese (Kanji).
Flag format: Diver24{person's name}

[For non-Japanese speakers]

Japanese text can be written either vertically or horizontally.
Historical Japanese is written either horizontally from right to left or vertically. Some old characters (旧字体, Kyūjitai) are also used.

Unlock Hint for 0 points
Monument speaks.
```

国道 108 号線を調べると宮城県石巻市から秋田県由利本荘市の道であることがわかる．

この線の近くで大きな川を探すと [ここ](https://www.google.co.jp/maps/@38.4907672,141.2354416,14.54z?hl=ja&entry=ttu) が見つかる．
![Screenshot_20240608_203909.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330450/eb40e1f6-829c-cb4f-ea4d-a09ba0f40963.png)



ヒントにモニュメントとあるので，```北上川 碑``` で調べると [石碑の語る治水・利水・災害の歴史](http://www.kasen.net/ishibumi.htm#03) が見つかる．

このサイトの北上川に関係するものから ```郡司``` を探すと [廣淵沼開墾記功碑](http://www.kasen.net/@2/kitakami/kyukita/hirobuch/index.htm) に ```山崎平太左衛門``` が見つかる．

```
Diver24{山崎平太左衛門}
```

# transportation
## youtuber
```
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]
```
調べると Fidias という youtuber であることがわかり，いろいろ記事がある．

[「無料で日本中を旅した」動画　外国人が投稿、JR不正乗車か](https://news.yahoo.co.jp/articles/bc10510d5fed2d71ed80c26b7c6b64eb80aefc16) を見ると，新鳥栖駅で捕まったことがわかる．

[この動画](https://www.youtube.com/watch?v=56X36sim3TM) の中に乗り換えた列車が写っている．

さくら572号の [列車時刻表](https://timetable.jr-odekake.net/train-timetable/104121?date=20240217)

```
Diver24{新鳥栖_572A}
```