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
36
ハードニング競技会用ベンチマーカー「katayude」(仮)
CODE BLUE 2023内のイベント「CyberTAMAGO」の発表資料です。
shinobe179
November 11, 2023
Tweet
Share
Featured
See All Featured
For a Future-Friendly Web
brad_frost
173
9.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
325
21k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Why Our Code Smells
bkeepers
PRO
333
56k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
22
580
Building Applications with DynamoDB
mza
89
5.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
22
1.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
25
1.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
122
18k
[RailsConf 2023] Rails as a piece of cake
palkan
44
4.6k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Transcript
ハードニング競技会用ベンチマーカー 「katayude」(仮) @shinobe179 2023/11/08
ハードニング競技会は、ハードニング能力、インシデント対応能力の向上に適した取り 組みである 個人で開催するナレッジに乏しい ハードニング競技会の実施ハードルを下げられないか? サマリー
だいたい以下のような方式で行われる。 競技者には、脆弱性があるシステムを与えられる 競技開始後、正常通信(サイト回遊、商品購入など)が継続的に行われる 正常通信が仕様通りに完了することで、スコアが加算される しばらくすると、攻撃者による偵察、攻撃が始まる 競技者は、 正常トラフィックを止めないように 攻撃からシステムを守る 競技終了時、スコアが最も高かった競技者の勝ち! 振り返りの後、同じシナリオを何度か繰り返す
こともある。 ハードニング競技会とは?
準備するものが多く(重く)、競技会を実施するハードルが高い。 シナリオを作る 同じシナリオを再現できる仕組みを作る 攻撃を受けるシステムを作る 競技会に必要なリソース
競技会に必要なリソースの表現方法をフレームワーク化して、実施や共有を簡単にできない か? シナリオを作る => katayude 同じシナリオを再現できる仕組みを作る => katayude 攻撃を受けるシステムを作る =>
Ansible、Packerなど 競技会のフレームワーク化
インフラチューニングの競技会「ISUCON」から着想を得ている。 競技者には、パフォーマンスに課題があるシステムを与えられる 競技者はボトルネックを解消し、 ベンチマーカー にベンチマークをリクエストする ベンチマーカー はリクエストに応じて、システムに対してリクエストを送信する システム仕様通りにレスポンスできれば加点 ボトルネックの解消とベンチマークを繰り返し、最終的に最もスコアが高かった競技者 が勝ち!(簡単に言うと)
「ベンチマーカー」の着想
ISUCON公式でベンチマーカーのフレームワークが公開されている。 https://github.com/isucon/isucandar クライアント(ブラウザ)挙動のシミュレーション 並列実行管理 スコア管理 ・・・ ……ほぼ完成では? ベンチマーカーの実装
ハードニングのためには、以下のような機能が必要そう。 正常通信 HTTP(S)以外のプロトコルのクライアントのシミュレーション 例:FTPによるファイルアップロードが正常に動作するか? 攻撃通信 偵察行為や攻撃の再現、成功判定 ツール(Nmap、Metasploit、Nucleiなど)の抽象化 各アクションのスケジューリングベンチマーク(開始から「決まった時間に」「決 まったアクション」をするように )
追加で必要な機能
ハードニング競技会は、ハードニング能力、インシデント対応能力の向上に適した取り 組みである 個人で開催するナレッジに乏しい ハードニング競技会の実施ハードルを下げられないか? ありがとうございました。 まとめ(サマリー再掲)