Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OSINT CTFを支える技術

OSINT CTFを支える技術

Seccamp 2024 LT

Avatar for Ryusei Ishikawa

Ryusei Ishikawa

August 12, 2024
Tweet

More Decks by Ryusei Ishikawa

Other Decks in Technology

Transcript

  1. 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
  2. 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
  3. 4 https://github.com/CTFd/ctfcli • 設定ファイルからCTFdのスコアサーバに デプロイするツール • 設定を全てテキストで記載するので、 Git, CI, CDとの相性も◎

    • WebのUIで設定する必要がなく、 設定ミスを防げる ◦ TsukuCTFでは結構ミスした • CTF問題の最新の状態を 1つに定義できる ◦ GitHubにあるものが最新? スコアサーバ上のものが最新?にならない 設定ファイルの例 #seccamp
  4. 6 https://github.com/xryuseix/ctfcli-unit-test • ctfcliの設定ファイルのフラグをテスト するツール • TsukuCTFではフラグの設定にミスが多かった ◦ 特に正規表現のミスが多 く、本番まで残った

    • そこで、設定ファイルのフラグをユニットテスト のよう にテストするツールを導入した • ついでにyaml形式のチェックもしてくれる 実行例 #seccamp
  5. [ 作問期間 ] [ 本番直前 ] [ 本番 ] 作問レビューフロー

    7 作問者が問題PRを作成 レビュアーがレビュー レビュアーがレビュー2 xryuseixが最終確認&merge スコアサーバ上で確認 作問者を中心となって修正 xryuseixが確認&deploy これくらいやってやっと十分に #seccamp
  6. [ 作問期間 ] [ 本番直前 ] 作問レビューフロー 8 作問者が問題PRを作成 レビュアーがレビュー

    レビュアーがレビュー2 xryuseixが最終確認&merge スコアサーバ上で確認 作問者を中心となって修正 xryuseixが確認&deploy これくらいやってやっと十分に  ちなみにここまで ↙ミスは結構あった [ 本番 ] #seccamp
  7. その他の技術・テクニック 9 • スコアサーバはAWS CloudFormationで管理した ◦ NFLabs.さんのブログ※を参考にさせていただきました • スコアサーバは2台構成で冗長化したし、キャッシングもした ◦

    しかし、低スペック2台だったのでどっちも落ちた • adminへの質問にチケット制度を導入した • 問題を解くために必要なWebサイトの鯖落ちは監視 ◦ 実際に当日1つがメンテナンスとなり、 チケットで対応 #seccamp ※ https://blog.nflabs.jp/entry/2023/11/10/093000