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
OSINT CTFを支える技術
Search
Ryusei Ishikawa
August 12, 2024
Technology
1
740
OSINT CTFを支える技術
Seccamp 2024 LT
Ryusei Ishikawa
August 12, 2024
Tweet
Share
More Decks by Ryusei Ishikawa
See All by Ryusei Ishikawa
DIVER OSINT CTF を支える技術 2025
xryuseix
0
79
OSINT CTFの リアル作問環境を体験してみよう!
xryuseix
0
170
HTTP通信を書きかえてみよう
xryuseix
0
70
Webアプリケーションのユーザ入力検証
xryuseix
3
1.3k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
3.1k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
730
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.4k
Other Decks in Technology
See All in Technology
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
400
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
240
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
230
人工衛星のファームウェアをRustで書く理由
koba789
15
7.8k
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
120
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
8
2.8k
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
440
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
110
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
0
330
Rustから学ぶ 非同期処理の仕組み
skanehira
1
130
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
140
ChatGPTとPlantUML/Mermaidによるソフトウェア設計
gowhich501
1
130
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Rails Girls Zürich Keynote
gr2m
95
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Gamification - CAS2011
davidbonilla
81
5.4k
A better future with KSS
kneath
239
17k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
KATA
mclloyd
32
14k
Context Engineering - Making Every Token Count
addyosmani
2
41
Transcript
OSINT CTFを支える技術 xryuseix @ryusei_ishika ネクストチューター #seccamp
TsukuCTF vs. DIVER OSINT CTF 2 TsukuCTF DIVER OSINT CTF
開催回数 / 最終開催日 3回 / 2023年12月 1回 / 2024年6月 直近の参加人数 701人 873人 運営人数 18人 6人 直近の問題数 38問 35問 直近の問題ミスの数 ※ 6問 0問 ※user-friendlyな対応(表記揺れ対応・問題文をわかりやすくなど )は除く #seccamp
TsukuCTF vs. DIVER OSINT CTF 3 TsukuCTF DIVER OSINT CTF
開催回数 / 最終開催日 3回 / 2023年12月 1回 / 2024年6月 直近の参加人数 701人 873人 運営人数 18人 6人 直近の問題数 38問 35問 直近の問題ミスの数 ※ 6問 0問 このLTでは何をしたのかについて説明します #seccamp
4 https://github.com/CTFd/ctfcli • 設定ファイルからCTFdのスコアサーバに デプロイするツール • 設定を全てテキストで記載するので、 Git, CI, CDとの相性も◎
• WebのUIで設定する必要がなく、 設定ミスを防げる ◦ TsukuCTFでは結構ミスした • CTF問題の最新の状態を 1つに定義できる ◦ GitHubにあるものが最新? スコアサーバ上のものが最新?にならない 設定ファイルの例 #seccamp
5 https://github.com/diver-osint-ctf/ctfd-config-generator • ctfcliの設定ファイルや、 作問に必要なファイルを自動生成 するツール • 元seccamp修了生のtask4233さんが作成し、 DIVER OSINT
CTF用にカスタマイズ • やや複雑なctfcliのデプロイコマンドの ラッパーも兼ねている 生成結果 #seccamp
6 https://github.com/xryuseix/ctfcli-unit-test • ctfcliの設定ファイルのフラグをテスト するツール • TsukuCTFではフラグの設定にミスが多かった ◦ 特に正規表現のミスが多 く、本番まで残った
• そこで、設定ファイルのフラグをユニットテスト のよう にテストするツールを導入した • ついでにyaml形式のチェックもしてくれる 実行例 #seccamp
[ 作問期間 ] [ 本番直前 ] [ 本番 ] 作問レビューフロー
7 作問者が問題PRを作成 レビュアーがレビュー レビュアーがレビュー2 xryuseixが最終確認&merge スコアサーバ上で確認 作問者を中心となって修正 xryuseixが確認&deploy これくらいやってやっと十分に #seccamp
[ 作問期間 ] [ 本番直前 ] 作問レビューフロー 8 作問者が問題PRを作成 レビュアーがレビュー
レビュアーがレビュー2 xryuseixが最終確認&merge スコアサーバ上で確認 作問者を中心となって修正 xryuseixが確認&deploy これくらいやってやっと十分に ちなみにここまで ↙ミスは結構あった [ 本番 ] #seccamp
その他の技術・テクニック 9 • スコアサーバはAWS CloudFormationで管理した ◦ NFLabs.さんのブログ※を参考にさせていただきました • スコアサーバは2台構成で冗長化したし、キャッシングもした ◦
しかし、低スペック2台だったのでどっちも落ちた • adminへの質問にチケット制度を導入した • 問題を解くために必要なWebサイトの鯖落ちは監視 ◦ 実際に当日1つがメンテナンスとなり、 チケットで対応 #seccamp ※ https://blog.nflabs.jp/entry/2023/11/10/093000
次回の開催もご期待ください! (両方とも次回開催に向けて準備中です) 10 おわり。 #seccamp