はじめに
インフラエンジニアが構成を考える上でセキュリティは切っても切り離せない存在です。セキュリティについて考える上で、「多層防御」は攻撃対策の基本となる重要な考え方になってきます。
それについて人に聞いたり調べたりして得たものをここにまとめていきます。
Cyber Kill Chain
多層防御について話す前にまず「Cyber Kill Chain」というモデルについて知る必要があります。これはサイバー攻撃の過程を7つのステップで表現したモデルであり、このモデルを参考にすることで攻撃者がどのような行動を理解して防御策を講じることができるようになります。
以下に7つのステップとどのような行為が各ステップにあたるかの具体例をまとめます。
- 偵察
- 標的組織の情報収集
- ウェブサイト、SNS、公開情報の調査
- 武器調達
- マルウェアの作成
- 攻撃ツールの準備
- 輸送
- マルウェアの送信
- フィッシングメール、USBの配布
- 攻略
- 人、物の脆弱性を悪用
- システムへの侵入
- 潜入
- バックドアの設置
- 持続的な攻撃基盤の確立
- 遠隔操作
- 攻撃者による遠隔操作の確率
- データの破壊、窃取の準備
- 奪取
- データの破壊、窃取
- 証拠隠滅
多層防御
Cyber Kill Chainでモデル化された攻撃者の行動への理解から生まれた多層防御は、複数の防御層を設けることで一つの防御が破られても他の層で攻撃を防ぐ考え方です。
イメージは進撃の巨人のウォールhogehogeみたいな感じだと思っています。
主な防御層は以下のようになっています。
- 物理セキュリティ
- 入退室管理
- 監視カメラ
- セキュリティゲート
- ネットワークセキュリティ
- ファイアウォール
- IDS/IPS
- セグメント分割
- エンドポイントセキュリティ
- ウイルス対策ソフト
- パッチ管理
- アプリケーションセキュリティ
- WAF
- 脆弱性診断
- データセキュリティ
- 暗号化
- アクセス制御
- バックアップ
- 人的セキュリティ
- セキュリティ教育
- アクセス権限管理
- インシデント対応訓練
Cyber Kill Chainと多層防御の対応関係
では実際Cyber Kill Chainの各段階に対して、多層防御でどのように有効な対策ができるのかを見ていきます。以下に書かれている対策例はあくまで一つの具体例であり、実際はもっとたくさんの対策を施す必要があります。
- 偵察への対応
- 人的セキュリティ
- 従業員のSNSポリシーの策定
- ネットワークセキュリティ
- 不要なポートを閉じる
- 人的セキュリティ
- 武器調達への対応
- ネットワークセキュリティ
- 不正通信の検知
- ネットワークセキュリティ
- 輸送への対応
- メールセキュリテイ
- 添付ファイルの検査
- エンドポイントセキュリティ
- ウイルス対策ソフト
- メールセキュリテイ
- 攻略への対応
- アプリケーションセキュリティ
- WAFの導入
- エンドポイントセキュリティ
- パッチ管理の徹底
- アプリケーションセキュリティ
- 潜入への対応
- エンドポイントセキュリティ
- 振る舞い検知
- ネットワークセキュリティ
- アクセス制御
- エンドポイントセキュリティ
- 遠隔操作への対応
- ネットワークセキュリティ
- 異常通信の監視
- エンドポイントセキュリティ
- プロセス監視
- ネットワークセキュリティ
- 奪取への対応
- データセキュリティ
- 暗号化
- アクセス制御
- 重要データの隔離
- データセキュリティ
まとめ
多層防御は最強の一個の防御に頼ることなく複数の層を組み合わせて攻撃を防御する考え方です。実際に攻撃を防ぐにはアプリケーション側だけではなくインフラ側でのセキュリティの担保や人的対策も含めた総合的な防御が重要になってきます。
その中で、インフラエンジニアは多層防御の観点を踏まえて適切な箇所に壁をつくり、効果的なログを出して攻撃を検知しやすい環境を作るのが大切なのだと思います。