Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DIVER OSINT CTF を支える技術 2025
Search
Ryusei Ishikawa
June 30, 2025
Technology
0
94
DIVER OSINT CTF を支える技術 2025
第1回OSINT-JP勉強会
https://osintjp.connpass.com/event/360008/
Ryusei Ishikawa
June 30, 2025
Tweet
Share
More Decks by Ryusei Ishikawa
See All by Ryusei Ishikawa
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
400
OSINT CTFの リアル作問環境を体験してみよう!
xryuseix
0
230
OSINT CTFを支える技術
xryuseix
1
810
HTTP通信を書きかえてみよう
xryuseix
0
74
Webアプリケーションのユーザ入力検証
xryuseix
3
1.3k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
3.4k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
770
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.4k
Other Decks in Technology
See All in Technology
『HOWはWHY WHATで判断せよ』 〜『ドメイン駆動設計をはじめよう』の読了報告と、本質への探求〜
panda728
PRO
5
2.1k
QAを"自動化する"ことの本質
kshino
1
130
生成AIではじめるテスト駆動開発
puku0x
0
120
ある編集者のこれまでとこれから —— 開発者コミュニティと歩んだ四半世紀
inao
5
3.3k
re:Invent完全攻略ガイド
junjikoide
1
370
明日から真似してOk!NOT A HOTELで実践している入社手続きの自動化
nkajihara
1
810
グローバルなコンパウンド戦略を支えるモジュラーモノリスとドメイン駆動設計
kawauso
1
930
「O(n log(n))のパフォーマンス」の意味がわかるようになろう
dhirabayashi
0
190
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
970
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
330
JJUG CCC 2025 Fall バッチ性能!!劇的ビフォーアフター
hayashiyuu1
1
360
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
3
560
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
The Cult of Friendly URLs
andyhume
79
6.7k
Typedesign – Prime Four
hannesfritz
42
2.9k
Code Review Best Practice
trishagee
72
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Transcript
DIVER OSINT CTF を支える技術 2025 石川琉聖 (xryuseix) @ryusei_ishika DIVER OSINT
CTF Admin / GMO Flatt Security Inc.
https://speakerdeck.com/xryuseix/osint-ctfwozhi-eruji-shu 今日の内容 : これの令和最新版です
DIVER OSINT CTFとは 3 「DIVER OSINT CTF 2025 公式解説&振り返り会」 スライドより引用
インフラチームは何をすべきか 4 • 快適なスコアサーバの提供 • 作問ミスをできるだけ減らす仕組み作り 大きく分けてこの二つ
スコアサーバはどう用意する? 5 • 今年はVultrでVPSを借りてその上にCTFdを用意 ◦ ちなみにCTFdはPythonで動いていて、重いことで有名 • 今年はメール検証機能を設定した ◦ ユーザはパスワードの変更が可能になる
◦ ユーザ登録リンクを、Gmailから送る設定にしていた ◦ 1日あたりのユーザ登録数が250人を超えるとGmailの制限に引っか かるため、Resendを契約 • 鯖の監視ではMackerelの有料版を契約 ◦ 開始後3分で10000リクエスト以上来ていた ことがわかった もっと知りたい人向け資料 : https://y-chan.dev/blog/diver-osint-ctfd-postfix/
CTFdの問題点 6 • 問題を登録するのに設定する項目が多すぎる • 入力項目が15個もある ◦ 場合によってはもっと (複数のフラグを設定など) •
今年のDIVERの問題数は40問 ◦ つまり600項目入力しなければならない ◦ 面倒だし、ミスするわけにいかない
ctfcliを使う 7 https://github.com/CTFd/ctfcli • 設定ファイルからCTFdのスコアサーバに デプロイするツール • 設定を全てテキストで記載するので、 Git (+GitHub
レビュー), CI, CDとの相性も◎ • CTF問題の最新の状態を 1つに定義できる ◦ 「Single Source of Truth」になる 設定ファイルの例 Next: そもそもこの設定ファイルで 必要な項目を書き忘れないようにするにはどうした ら?
8 https://github.com/diver-osint-ctf/ctfd-config-generator • ctfcliの設定ファイルや、 作問に必要なファイルを自動生成 するツール • OSSをDIVER OSINT CTF用にカスタマイズ
↑ 作問者が変更する範囲 Next: 作問者が変更した内容で、 記述ミスしないようにするにはどうしたら?
Linter for ctfcli config 9 • CI上で設定ファイルを自動チェック ◦ YAMLのフォーマット ◦
Exifに不要な情報がないか ◦ 配布するファイルのパス ◦ ファイルサイズ ▪ CTFdの配布ファイルは上限1MB ◦ +他......
その他の技術・テクニック 10 • adminへの質問にチケット制度を導入した ◦ 24hで200くらい送られてきた • 問題を解くために必要なWebサイトの鯖落ちを監視 • solve
check review with LLM ◦ Cursorを契約して、いくつかのモデルで検証 ◦ 問題によってはLLMで解けることを許容 • プラグインを自前実装 ◦ 座標指定プラグイン ◦ Report問題用プラグイン ◦ ブルートフォース対策プラグイン