振り返りとは何か
インシデントの振り返りとは、事故が終わったあとに、何が起き、どう対応したかを短い文書にまとめることです。同じ事故を繰り返さず、対応の速さを測って良くしていくために行います。
振り返りまで終えて、はじめてインシデント対応が終わります。
このレッスンのゴール
メモ
インシデントの記録から、検知までの時間と復旧までの時間を計算することができる。
キーワード
| ことば | いみ |
|---|---|
| 振り返り | 事故のあとに、学んだことをまとめること |
| タイムライン | 出来事を時間順に並べた記録 |
| 検知までの時間 | 攻撃が始まってから、気づくまでの時間 |
| 復旧までの時間 | 気づいてから、元に戻るまでの時間 |
| 根本原因 | 事故が起きた、いちばん奥の理由 |
| 再発防止 | 同じ事故を繰り返さないための対策 |
学生が入力するセルは、このプレビューでは空白です。
タイムラインで出来事を並べる
振り返りの土台は、タイムラインです。複数のログと、対応の作業を、時間順に1つの表に並べます。
攻撃が始まった時刻、気づいた時刻、切り離した時刻、元に戻った時刻の4つが、とくに大事です。この4つの差が、対応の速さを表します。
例: 事故のタイムライン
| 時刻 | 出来事 | 何の時刻か |
|---|---|---|
| 09:10 | 攻撃が始まった | 始まり |
| 09:30 | アラートが出て、気づいた | 検知 |
| 09:55 | アカウントを止めた | 封じ込め |
| 12:30 | サービスが元に戻った | 復旧 |
学生が入力するセルは、このプレビューでは空白です。
時刻の順に並べ替える
printf '09:55 recovered\n09:10 detected\n09:30 contained\n' | sortここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
記録の形を見る
head -n 4 case/mtimes.txtここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
時間の差を2つの数にする
検知までの時間は、攻撃が始まってから、気づくまでの時間です。復旧までの時間は、気づいてから、元に戻るまでの時間です。
日をまたぐこともあるので、時刻は分に直して引きます。何件かの平均を取ると、組織の対応の速さが見えます。
例: 3件の時間と平均
| 件 | 始まり | 気づいた | 戻った | 検知まで | 復旧まで |
|---|---|---|---|---|---|
| 1 | 10/3 22:10 | 10/3 22:40 | 10/4 01:40 | 30分 | 180分 |
| 2 | 10/9 08:00 | 10/9 08:30 | 10/9 10:30 | 30分 | 120分 |
| 3 | 10/20 13:00 | 10/20 14:30 | 10/20 16:30 | 90分 | 120分 |
| 平均 | 50分 | 140分 |
学生が入力するセルは、このプレビューでは空白です。
2つの時刻の差(分)
printf '09:10 09:55\n' | awk '{split($1,a,":"); split($2,b,":"); print (b[1]*60+b[2])-(a[1]*60+a[2])}'ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
責めずに、根本原因を探す
振り返りは、誰かを責める場ではありません。仕組みのどこが穴だったかを探します。「最初に操作を間違えた人」は、ふつう根本原因ではありません。
事実を並べ、「なぜ」を何度も問います。いちばん奥の理由が根本原因です。そこに再発防止を当てます。
例: 事実から再発防止まで
| 段階 | 内容 |
|---|---|
| 事実 | ログインの失敗が続き、90分気づかなかった |
| なぜ1 | 連続した失敗を知らせるルールがなかった |
| 根本原因 | 管理者のログインを監視する決まりがなかった |
| 再発防止 | 時間枠のルールを足し、毎月見直す |
学生が入力するセルは、このプレビューでは空白です。
よくある間違い
注意
「いちばん最初にミスをした人が、原因だ」と考える人が多くいます。人は誰でも間違えます。間違いが事故になる仕組みが穴です。人ではなく、仕組みの穴を直しましょう。