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
ハードニング競技会用ベンチマーカー「katayude」(仮)
Search
shinobe179
November 11, 2023
0
91
ハードニング競技会用ベンチマーカー「katayude」(仮)
CODE BLUE 2023内のイベント「CyberTAMAGO」の発表資料です。
shinobe179
November 11, 2023
Tweet
Share
Featured
See All Featured
Making Projects Easy
brettharned
117
6.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Practical Orchestrator
shlominoach
190
11k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Optimizing for Happiness
mojombo
379
70k
What's in a price? How to price your products and services
michaelherold
246
12k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
KATA
mclloyd
32
14k
Transcript
ハードニング競技会用ベンチマーカー 「katayude」(仮) @shinobe179 2023/11/08
ハードニング競技会は、ハードニング能力、インシデント対応能力の向上に適した取り 組みである 個人で開催するナレッジに乏しい ハードニング競技会の実施ハードルを下げられないか? サマリー
だいたい以下のような方式で行われる。 競技者には、脆弱性があるシステムを与えられる 競技開始後、正常通信(サイト回遊、商品購入など)が継続的に行われる 正常通信が仕様通りに完了することで、スコアが加算される しばらくすると、攻撃者による偵察、攻撃が始まる 競技者は、 正常トラフィックを止めないように 攻撃からシステムを守る 競技終了時、スコアが最も高かった競技者の勝ち! 振り返りの後、同じシナリオを何度か繰り返す
こともある。 ハードニング競技会とは?
準備するものが多く(重く)、競技会を実施するハードルが高い。 シナリオを作る 同じシナリオを再現できる仕組みを作る 攻撃を受けるシステムを作る 競技会に必要なリソース
競技会に必要なリソースの表現方法をフレームワーク化して、実施や共有を簡単にできない か? シナリオを作る => katayude 同じシナリオを再現できる仕組みを作る => katayude 攻撃を受けるシステムを作る =>
Ansible、Packerなど 競技会のフレームワーク化
インフラチューニングの競技会「ISUCON」から着想を得ている。 競技者には、パフォーマンスに課題があるシステムを与えられる 競技者はボトルネックを解消し、 ベンチマーカー にベンチマークをリクエストする ベンチマーカー はリクエストに応じて、システムに対してリクエストを送信する システム仕様通りにレスポンスできれば加点 ボトルネックの解消とベンチマークを繰り返し、最終的に最もスコアが高かった競技者 が勝ち!(簡単に言うと)
「ベンチマーカー」の着想
ISUCON公式でベンチマーカーのフレームワークが公開されている。 https://github.com/isucon/isucandar クライアント(ブラウザ)挙動のシミュレーション 並列実行管理 スコア管理 ・・・ ……ほぼ完成では? ベンチマーカーの実装
ハードニングのためには、以下のような機能が必要そう。 正常通信 HTTP(S)以外のプロトコルのクライアントのシミュレーション 例:FTPによるファイルアップロードが正常に動作するか? 攻撃通信 偵察行為や攻撃の再現、成功判定 ツール(Nmap、Metasploit、Nucleiなど)の抽象化 各アクションのスケジューリングベンチマーク(開始から「決まった時間に」「決 まったアクション」をするように )
追加で必要な機能
ハードニング競技会は、ハードニング能力、インシデント対応能力の向上に適した取り 組みである 個人で開催するナレッジに乏しい ハードニング競技会の実施ハードルを下げられないか? ありがとうございました。 まとめ(サマリー再掲)