本文へスキップ
BecomeCoder

AWSコース · 第7章 セキュリティとコンプライアンス · レッスン40

脅威を防ぐ・見つけるサービス

導入

攻撃には色々な種類があります。DDoS攻撃、Webアプリの脆弱性を突く攻撃、内部での不審な操作……AWSにはそれぞれに対応する専用サービスがあります。

説明

セキュリティサービスは、大きく「予防(防ぐ)」と「検知(見つける)」に分けられます。

脅威・目的サービス何をするか
DDoS攻撃(大量アクセスでサービスを妨害)AWS Shieldネットワーク層・トランスポート層への大規模なDDoS攻撃を自動的に防御する(標準保護は無料)
Webアプリへの攻撃(SQLインジェクション/XSSなど)AWS WAF(Web Application Firewall)HTTP/HTTPSリクエストの内容を検査し、悪意あるパターンのリクエストをブロックするルールを設定する
不審なアクティビティの検知Amazon GuardDutyVPCのログやDNSクエリなどを機械学習で継続的に分析し、通常と異なる挙動(不正アクセスの兆候など)を検知する
ソフトウェアの脆弱性Amazon InspectorEC2インスタンスやコンテナイメージを自動でスキャンし、既知の脆弱性やセキュリティ上の問題を洗い出す
S3内の個人情報・機密情報Amazon MacieS3に保存されたデータを機械学習で分析し、個人情報(氏名・カード番号など)が含まれていないか検出する
インシデントの調査Amazon DetectiveGuardDutyなどが検知した問題について、関連するログを可視化しながら根本原因を調査しやすくする
flowchart TD
    Attack["外部からの攻撃"] --> Shield["Shield<br/>DDoS防御"]
    Attack --> WAF["WAF<br/>Web攻撃をブロック"]
    Inside["内部の異常な挙動"] --> GD["GuardDuty<br/>継続的な脅威検知"]
    GD --> Det["Detective<br/>原因調査"]
    Code["EC2/コンテナ"] --> Insp["Inspector<br/>脆弱性スキャン"]
    Data["S3のデータ"] --> Macie["Macie<br/>個人情報の検出"]

「入り口で防ぐ(Shield・WAF)」「中で見張る(GuardDuty)」「弱点を探す(Inspector)」「データの中身を見る(Macie)」「起きたことを調べる(Detective)」と役割で整理すると覚えやすくなります。

具体例

ある会社のECサイトが、1日のうちにさまざまな脅威に見舞われたと想像してみましょう。それぞれ担当するサービスが違います。

  1. 朝:大量アクセスでサイトを落とそうとするDDoS攻撃 → Shieldが自動で吸収・防御
  2. 昼:ログイン欄にSQLインジェクションを仕込む不正リクエスト → WAFが悪意あるパターンを検知してブロック
  3. 夕方:あるEC2から見慣れない海外IPへ大量通信という不審な挙動 → GuardDutyが「異常」として検知・通知
  4. 通知を受けて調査 → Detectiveで関連ログを可視化し、乗っ取られたインスタンスを特定
  5. 夜:定期スキャンで、別のEC2に未更新の既知脆弱性が見つかる → Inspectorが報告
  6. さらに → MacieがS3を調べ、あるバケットにマスキングされていないカード番号が混じっていることを発見

「防ぐ(Shield/WAF)→ 気づく(GuardDuty)→ 調べる(Detective)→ 弱点を探す(Inspector)→ データを点検(Macie)」。対象が何かでサービスが決まる、と分かれば丸暗記が要りません。

読んでみよう

サービス名と「対象が何か(ネットワーク/Webリクエスト/挙動/脆弱性/データ/調査)」をセットで覚えるのがCLF対策の近道です。

次のレッスンへ →