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
480
OSINT CTFを支える技術
Seccamp 2024 LT
Ryusei Ishikawa
August 12, 2024
Tweet
Share
More Decks by Ryusei Ishikawa
See All by Ryusei Ishikawa
HTTP通信を書きかえてみよう
xryuseix
0
58
Webアプリケーションのユーザ入力検証
xryuseix
3
1.1k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
2.1k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
590
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1k
Other Decks in Technology
See All in Technology
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
170
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
2
230
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
10
1.2k
SSMRunbook作成の勘所_20241120
koichiotomo
3
160
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
190
Zennのパフォーマンスモニタリングでやっていること
ryosukeigarashi
0
170
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
230
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
180
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
430
Designing for Performance
lara
604
68k
Optimizing for Happiness
mojombo
376
70k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
130
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
What's in a price? How to price your products and services
michaelherold
243
12k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
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