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
120
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
580
OSINT CTFの リアル作問環境を体験してみよう!
xryuseix
0
310
OSINT CTFを支える技術
xryuseix
1
950
HTTP通信を書きかえてみよう
xryuseix
0
85
Webアプリケーションのユーザ入力検証
xryuseix
3
1.3k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
4.5k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
810
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.5k
Other Decks in Technology
See All in Technology
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
130
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
110
GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える
flatt_security
2
1.6k
Phase05_ClaudeCode入門
overflowinc
0
2.3k
やさしいとこから始めるGitHubリポジトリのセキュリティ
tsubakimoto_s
2
1.8k
How to install a gem
indirect
0
1.7k
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.9k
Phase10_組織浸透_データ活用
overflowinc
0
1.8k
PostgreSQL 18のNOT ENFORCEDな制約とDEFERRABLEの関係
yahonda
0
130
Phase07_実務適用
overflowinc
0
2k
来期の評価で変えようと思っていること 〜AI時代に変わること・変わらないこと〜
estie
0
110
FastMCP OAuth Proxy with Cognito
hironobuiga
3
210
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
320
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
120
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
180
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
96
Music & Morning Musume
bryan
47
7.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
310
New Earth Scene 8
popppiees
1
1.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
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問題用プラグイン ◦ ブルートフォース対策プラグイン