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
560
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
110
HTTP通信を書きかえてみよう
xryuseix
0
62
Webアプリケーションのユーザ入力検証
xryuseix
3
1.1k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
2.4k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
660
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.2k
Other Decks in Technology
See All in Technology
BCMathを高速化した一部始終をC言語でガチ目に解説する / BCMath performance improvement explanation
sakitakamachi
2
1.2k
銀行でDevOpsを進める理由と実践例 / 20250317 Masaki Iwama
shift_evolve
1
110
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略 / phper-kaigi-2025-ryu
carta_engineering
0
680
LINEギフトのLINEミニアプリアクセシビリティ改善事例
lycorptech_jp
PRO
0
240
技術的負債を正しく理解し、正しく付き合う #phperkaigi / PHPerKaigi 2025
shogogg
7
1.8k
Dapr For Java Developers SouJava 25
salaboy
1
130
caching_sha2_passwordのはなし
boro1234
0
210
LINE API Deep Dive Q1 2025: Unlocking New Possibilities
linedevth
1
160
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.3k
IAMのマニアックな話 2025 ~40分バージョン ~
nrinetcom
PRO
8
890
職種に名前が付く、ということ/The fact that a job title has a name
bitkey
1
240
[CATS]Amazon Bedrock GenUハンズオン座学資料 #2 GenU環境でRAGを体験してみよう
tsukuboshi
0
130
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
Optimizing for Happiness
mojombo
377
70k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Designing Experiences People Love
moore
141
23k
Agile that works and the tools we love
rasmusluckow
328
21k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
490
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Embracing the Ebb and Flow
colly
85
4.6k
Into the Great Unknown - MozCon
thekraken
36
1.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Six Lessons from altMBA
skipperchong
27
3.7k
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