発表概要
u 2022年度のAVTokyoの
Open xINT CTFに
ところてんさん、のみぞうさん
とチームで参加
u この発表では参加報告という形
でCTFの説明、事前準備、解いた
問題の紹介、ふりかえりをする
Slide 3
Slide 3 text
おしながき
u はじめに
u AVTokyo、Open xINT CTFについて
u 2022年度のOpen xINT CTFに向けた準備について
u チーム結成、⾃分⾃⾝の準備
u CTFで挑んだ問題(私の担当分)について紹介
u CTFのふりかえり
u おわりに
私の発表後もチームメンバーによる参加報告が続きます!(※勉強会当⽇限定)
2022年のAVTokyoはハイブリッド開催
u 2⽇間の開催(1⽇⽬オンライン、2⽇⽬オフライン)
u オフラインは3年越しの復活
u 従来どおり地下のバーで開催
u 現地参加されていた⽅が上げた画像を⾒る限り、⼈数も戻った印象
これは2019年の光景だが、2022年も
マスクをしている以外はだいたいこのような密度
オンラインはDiscordとTwitch
Slide 7
Slide 7 text
Open xINT CTFとは
u AVTokyoのイベントの1つ
u さまざまなインテリジェンス(x INT)によってフラグを得る
”現代のスパイ養成コンテスト”
u 2016年より毎年AVTokyoにて開催
u 2022年はオンライン開催、チーム戦、OSINT問題限定の出題
u 運営チームはpinja(lumin、ykame、awamori)
u 国内最強、世界的にもトップクラスのOSINT CTFチーム
u そのようなチームが作問するOSINT CTF
[備考]: xINT CTFの2021年度からの変更点
u 開催時間が3分の2に減少
u 9時間 → 6時間(-3時間)
u 問題数も減少
u 22問→ 17問
u しかし、1時間あたりに解かなければいけない問題数は上昇
u 2.44 → 2.83(問/時間)
u 軽微な変更
u 禁⽌事項に微修正
u CTFサーバのURLが⽣IPアドレスからドメインになった
u 配点が50point刻みから100point刻みになった
チーム結成にあたって
u OSINT問題限定のCTFにおいてメンバーは重要なファクター
u 数が多いほど有利
u メンバーに多様性があるほど有利
u その辺りを考慮しつつ、お祭り気分でワイワイやりたかった
ので私がお誘いのDMを送った
Slide 14
Slide 14 text
チーム『stardust_security』メンバー紹介
u ところてん(@tokoroten0813)さん
u セキュリティ業界12年⽬
u CISA / CISM / CDPSE / GCP PCA
u のみぞう(@nomizooone)さん
u “セキュリティが好きなただの⽝”
u ナゾトキCTF開催(右図)、Hardening競技会参加、
技術書執筆など多岐に渡る活動
u 私(@meow_noisy)
u ただのOSINT CTF好き
u チーム名はナゾトキCTFに出てくる
架空の会社名から拝借(承諾済み) https://nomizone.booth.pm/items/4067620
Slide 15
Slide 15 text
チーム結成後のブリーフィング
u チーム⽬標設定
u 次の3つ。達成ハードルをできる限り下げる。
u チーム運営ルール
u ほぼ存在しないようなもの
u 使⽤するツールなどの準備は依頼しなかった
u 個⼈のやりやすい調べ⽅で進めた⽅が調査の多様性が上がると
思ったので
Slide 16
Slide 16 text
チームの協⼒体制について
u リアルタイムの情報連携にはDiscordでボイスチャット
u 調査内容の進捗共有にはGoogleスライドを使⽤
u 調べて⾒つかったサイトや画像などをスライドに書く
「3month」 の調査スライドの例
Slide 17
Slide 17 text
⾃分⾃⾝の準備
u 2022年度のOpen xINT CTFを念頭に置きつつ、1⽇1問
OSINTの問題を解くようにしていた
u 実技で錆がつかないようにするため。
u その他、OSINT記事で勉強しインプット、
独⾃の技術開発と勉強会発表でアウトプットを続ける
勉強会発表スライド
https://speakerdeck.com/meow_noisy
2021/11〜2022/10までに
参加したCTFリスト
Slide 18
Slide 18 text
xINT CTF⽤の秘密兵器(もといゴミアプリ)
の開発:
『 Googleマップの位置座標を整形くん 』
u 位置座標を求める問題で毎回 GoogleマップのURLから座標をフ
ラグ形式へ加⼯する作業がストレス😣
u → GoogleマップのURLを⼊⼒するとフラグ形式に整形して
コピペできる状態にするWebアプリを開発
u アプリへのリンクはスライドの概要欄に記載
URLを⼊れて
ボタンを押すだけ
Slide 19
Slide 19 text
CTF開催 前⽇の調査
u Open xINT CTF関係のソースを物⾊
u 公式HP
u ツイッターアカウント@MoriSho17795702
u pinja.xyz のWHOISレコード
u 結果としては、スタートダッシュで出し抜けるような
アドバンテージは得られなかった
CTF前⽇にWHOISレコードにアップデートが
あったが出題された問題とは関係なかった。。。
Slide 20
Slide 20 text
Open xINT CTFで
⾃分が挑んだ問題について
解けた問題、解けなかった問題
Slide 21
Slide 21 text
私のCTFの解答状況
u 6問正解し900点
u うち1問はキルパクも同然だったので実質600点
u 以降では解けた問題3問と解けなかった問題2問(BUS,BUS2)を
紹介する
←キルパク分
Slide 22
Slide 22 text
whois(100pt, 106 Solves)
u Google検索で ip to asn で検索すると下記のサービスがヒット
u https://hackertarget.com/as-ip-lookup/
u 当該のIPアドレスを⼊⼒するとフラグ
u AS番号の調査がOSINT上どのような意味を持つのかは
kawakatz本 第4章に詳しい説明がある
SOLVED
例年whoisコマンドでドメインを調べるだけだったのだが、今年は傾向が変化したので若⼲焦った
Slide 23
Slide 23 text
SSID(100pt, 39 Solves)
u OSINTの問題で”SSID”とくれば初⼿WiGLE
u https://wigle.net/
u ただし、検索機能を使うにはユーザアカウント作成が必須
SOLVED
ykameと⼊⼒して検索する
と1件レコードがヒット
Slide 24
Slide 24 text
spacious(100pt, 56 Solves) SOLVED
Slide 25
Slide 25 text
spacious(100pt, 56 Solves)
u 看板を拡⼤
u ⽂字の断⽚をGoogleに打つと
サジェストで会社名がわかる
SOLVED
Slide 26
Slide 26 text
spacious(100pt, 56 Solves)
u 「トヨタモビリティパーツ」でGoogleマップを検索
u 店舗候補がたくさんでてくる
u 衛星写真で、店舗近くに公園のようなものがあるかをチェック
u 東京で公園らしきものが近くにある店舗を発⾒
u 3Dマップで⾒ると右に”AB”という看板もあるので確定
u フラグはこれでした
SOLVED
Slide 27
Slide 27 text
BUS(200pt, 24 Solves) UNSOLVED
Slide 28
Slide 28 text
BUS(200pt, 24 Solves)
u 写真の分析
u レンタカーのシャトルバスだということはわかる
u 空港 と NR… とを⾏き来している模様
u HND⇔NRT間かと思ったけど、
レンタカー会社が空港を⾏き来する
バスを⽤意する訳がないですね…
u 窓にセブンイレブンのロゴが反射
u 地⾯にペイント
u 「レンタカー」?
UNSOLVED
Slide 29
Slide 29 text
BUS(200pt, 24 Solves)
u のみぞうさんがバスの候補を絞ってくださる
u 旭川空港⽤のシャトルバスがそれっぽい
u しかし、旭川空港のセブンイレブンは
空港内であり、Googleストリートビューを
⾒てもセブンイレブンの看板はなかったので
旭川空港ではないと判断
u レンタカーとセブンイレブンが近い場所を
探す必要がある
UNSOLVED
Slide 30
Slide 30 text
秘密?兵器:
地理的位置に基づく店舗名の(エセ)AND検索
u 「店舗名2つを指定すると距離の近い店舗ペアを列挙す
る」スクリプトを開発していた
u https://meow-memow.hatenablog.com/entry/2022/05/01/214751
u 左下の写真の場所を特定しようとしてスタバとFrancFranc
の200m以内で近接する店舗ペアを列挙した例(右下)
Slide 31
Slide 31 text
秘密?兵器:
地理的位置に基づく店舗名の(エセ)AND検索
u ニッポンレンタカーとセブンイレブンで試した
u セブンイレブンがあまりにも多く、30分くらい処理がかかった
u 207ペアヒットしたが空港関係の店舗は北九州空港のみだった
u 北九州空港のニッポンレンタカーを調べたがバスの種類が違う
u → 詰んだ
https://tabiraku.travel/rentacar/fukuoka/airport-
kitakyushu/
Slide 32
Slide 32 text
BUS(200pt, 24 Solves)
u CTF終了後に解き直し
u 結局バスの候補が旭川空港のものしか⾒つからなかったので
旭川空港をうろつく
u →旭川空港の外れに床がお題のフォントで塗られた場所を発⾒した
u ニッポンレンタカーの駐⾞場ではないので店舗名の(エセ)AND検索で
ヒットしないのも納得
u セブンイレブンの看板に引っ張られてしまい、旭川空港の
調査がおざなりになってしまったのが敗因
UNSOLVED
BUS2 (200pt, 32 Solves)
u 写真の分析
u バス: ファミリーxx、ナンバープレート「4-72」
u ⻘い看板: 25、「xx江xx」
u ⽩い看板: 路肩駐⾞禁⽌
u センターラインがない
UNSOLVED
Slide 35
Slide 35 text
BUS2 (200pt, 32 Solves)
u 「県道の標識では」というアシストがのみぞうさんから⼊る
u 43県を北から県道25号の標識を
ブルートフォースしようとした所、
1発(岩⼿県)で当該の標識がヒット
u 影のさす⽅向から北がわかる
u 「あとは県道のうち、⻄から東へ⽔平に伸びる所に
絞って探せばOKだお!」と考えていた
UNSOLVED
北側
!" #$"
%&'()*+,-./0$1
Slide 36
Slide 36 text
BUS2 (200pt, 32 Solves)
u ガッツリ⻄から東へ⽔平に
58.3km伸びている
u ⽅⾓が⼿がかりにならない…
u 県道もこんなに⻑いと思わなかった
u → しらみ潰ししようとしたら
時間切れ
UNSOLVED
58.3km
Slide 37
Slide 37 text
BUS2 (200pt, 32 Solves)
u CTF終了後に解き直し
u 「道端に脇道にそれる部分があることから停⾞できる場所があるの
では」と考えた
u 岩⼿県道25号のうち、Googleマップでスポットとして登録されて
いる箇所を1つ1つ調べてみた
u 撮影場所がすぐに⾒つかった
UNSOLVED
Slide 38
Slide 38 text
CTFの振り返り
Slide 39
Slide 39 text
最終順位
u チーム27位だった
u ワイワイやれて、チームで1問以上解いて、病気になった⼈も
出なかったのでチーム⽬標は達成
u ⼀⽅、⾃分の(密かな)個⼈⽬標としていた「撮影場所の特定問題
の全完」には失敗
u 特にバス問が解けなかったのは痛い
✅
✅
✅
バス問を解けなかった理由
u ⾃分の1年の技術研鑽の⽅向がミスマッチ
u ⾃分の撮影場所の特定は「画像で検索」を
主軸にした⽅向で勉強していた
u ⼀⽅で今年は「画像で検索」が使えるケースが少なかった
u 私が勉強で解いていた問題は易しい難易度のものを
選り好みしていた可能性がある
u 錆落とし != 刃を研ぐ
https://twitter.com/lumin/status/1585546682355576832
Slide 43
Slide 43 text
その他の反省点
u Googleスライドの運⽤は改善の余地がある
u 全体的に⽂字サイズが⼤きくURLを貼るとスライドを埋め尽くして
しまう(右下)
u URL短縮を使うなどすべきだった
u xINT CTFは問題数が多く、他のメンバーが残してくれた調査結果
を⾒逃してしまった
u (ここらへんのスライド運⽤の課題はReconVillage CTFの時は露呈
しなかった)
u 38時間あり、問題数も少なかったため
Slide 44
Slide 44 text
2022年度のxINT CTFの感想
u 難しくなってる(気がする)
u しかし、解いていて⾯⽩かった
u 知識量ではなく思考⼒で差がつくように設計されていて質もいい
u 参加者のレベルがどんどん⾼くなっている
u 新規勢も常連勢もどちらも。
u write-upが充実
u 事後解答とはいえ、全問のwrite-upが揃ったのは今年が初めて
u Open xINT CTFは⽇本勢の問題の解き⽅、チームワークが知れる滅多
に無い機会
u ⾒ていて⼤変勉強になる
u CTF終了後の運営の講評タイムが1時間超えで満⾜
Slide 45
Slide 45 text
今後の私の技術研鑽に関して
u 勉強の仕⽅は変えるが、xINT CTF1位を⽬指して勉強を
継続していくことは変わらない
u まともにインテリジェンスができるようになるまであと8年かかる
⾒込みだが、細く⻑くやっていきたい
Slide 46
Slide 46 text
おわりに
Slide 47
Slide 47 text
謝辞[1/2]
u CTFを開催してくださったpinjaへの感謝
u 毎年の企画・作問・運営、本当にありがとうございます!
u 参加者の技術レベルが年々上がる中で、解きごたえのある⾯⽩い
問題を出していただき、1年で1番の楽しみとなっています
Slide 48
Slide 48 text
謝辞[2/2]
u チームメンバー(ところてんさん、のみぞうさん)への感謝
u ⼀緒に遊んでいただきありがとうございました!
u こちらからの誘いを快諾いただき嬉しかったです
Slide 49
Slide 49 text
次回のOpen xINT CTFについて
u OSINT問限定は今年までと明⾔
u オンサイト開催でSIGINT, HUMINT問
が復活か?
u 問題の難易度はまだ上げられる模様
u 逆に⾔えば今まで⼿加減されていた
ということ
u どんな難問が今後出てくるか楽しみ!
https://twitter.com/YuhoKameda/status/1586545803191255040
https://www.avtokyo.org/avtokyo2022/day1-events#h.le6ozvjjes26
Slide 50
Slide 50 text
まとめ
u 2022年度のOpen xINT CTFの内容、私の取り組み
について説明した
u 次回のOpen xINT CTFを⾒据えてこれからもOSINTの
勉強を継続していく
u OSINT CTFは楽しい!