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
73
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
OSINT CTFの リアル作問環境を体験してみよう!
xryuseix
0
170
OSINT CTFを支える技術
xryuseix
1
710
HTTP通信を書きかえてみよう
xryuseix
0
67
Webアプリケーションのユーザ入力検証
xryuseix
3
1.3k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
3k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
720
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.4k
Other Decks in Technology
See All in Technology
メルカリIBIS:AIが拓く次世代インシデント対応
0gm
2
490
夏休みWebアプリパフォーマンス相談室/web-app-performance-on-radio
hachi_eiji
1
290
なごミュ@SPAJAM2025 第二回予選
1901drama
0
120
意志の力が9割。アニメから学ぶAI時代のこれから。
endohizumi
1
110
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
200
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
18
52k
新卒(ほぼ)専業Kagglerという選択肢
nocchi1
1
1.8k
マイクロモビリティシェアサービスを支える プラットフォームアーキテクチャ
grimoh
1
150
夢の印税生活 / Life on Royalties
tmtms
0
270
[kickflow]20250319_少人数チームでのAutify活用
otouhujej
0
200
Exadata Database Service on Dedicated Infrastructure セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
1
350
Rethinking Incident Response: Context-Aware AI in Practice - Incident Buddy Edition -
rrreeeyyy
0
130
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1031
460k
It's Worth the Effort
3n
187
28k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Speed Design
sergeychernyshev
32
1.1k
How to Ace a Technical Interview
jacobian
279
23k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
For a Future-Friendly Web
brad_frost
179
9.9k
Done Done
chrislema
185
16k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
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問題用プラグイン ◦ ブルートフォース対策プラグイン