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
640
OSINT CTFを支える技術
Seccamp 2024 LT
Ryusei Ishikawa
August 12, 2024
Tweet
Share
More Decks by Ryusei Ishikawa
See All by Ryusei Ishikawa
OSINT CTFの リアル作問環境を体験してみよう!
xryuseix
0
140
HTTP通信を書きかえてみよう
xryuseix
0
65
Webアプリケーションのユーザ入力検証
xryuseix
3
1.2k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
2.7k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
700
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.3k
Other Decks in Technology
See All in Technology
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
43
26k
Nonaka Sensei
kawaguti
PRO
3
650
SFTPコンテナからファイルをダウンロードする
dip
0
170
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
2
210
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
4
1.6k
TerraformをSaaSで使うとAzureの運用がこんなに楽ちん!HCP Terraformって何?
mnakabayashi
0
120
Introduction to Bill One Development Engineer
sansan33
PRO
0
250
Grafana MCP serverでなんかし隊 / Try Grafana MCP server
kohbis
0
340
API の仕様から紐解く「MCP 入門」 ~MCP の「コンテキスト」って何だ?~
cdataj
0
150
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
100
OpenTelemetry Collector internals
ymotongpoo
5
530
Kotlinで学ぶ 代数的データ型
ysknsid25
5
1.1k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
Optimizing for Happiness
mojombo
379
70k
The Language of Interfaces
destraynor
158
25k
Practical Orchestrator
shlominoach
188
11k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
690
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
KATA
mclloyd
29
14k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
For a Future-Friendly Web
brad_frost
179
9.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
A designer walks into a library…
pauljervisheath
206
24k
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