見出し画像

AWSを初めから丁寧に Vol.3(AWSセキュリティ)

クラウドを利用する上で、セキュリティは重要項目です。
AWSではセキュリティを最重要事項としており、各サービスを安全に利用するために様々な対策がとられています。

1. AWSセキュリティの取り組み

責任共有モデル

AWSのセキュリティの考え方のベースになるのは責任共有モデルです。
AWSは物理的なインフラや仮想インスタンスを稼働させる部分に対して責任を持って安全性の担保に努めています。
私たちAWS利用者は、下記図の「お客様」となっている部分のセキュリティ対策を責任を持って行う必要があります。

AWS責任共有モデルより

第三者認証

AWSはセキュリティやコンプライアンスが問題ないことを公的に証明するための多くの第三者認証を取得しています。

2. 外部からの攻撃対策

システムを構築する場合は、常に外部からの攻撃への対策が必要です。

種類と防御方法

ここでは一般的な攻撃の種類と防御方法について確認します。

AWSにおける防御方法

AWSセキュリティマネージドサービスの一部

【AWS Organization】
AWSアカウント全体を一元管理するサービスです。
アカウント作成の自動化、一括請求、リソース共有、アカウントへのアクセス制御ポリシーの設定など様々な機能があります。
料金は無料です。

【AWS WAF】
AWS WAFとは、可用性、セキュリティ侵害、リソースの過剰消費に影響を与えるような、ウェブの脆弱性を利用した一般的な攻撃やボットから、ウェブアプリケーションまたは API を保護するウェブアプリケーションファイアウォールです。

【AWS GuardDuty】
アカウント内の異常な動作や、不正な操作に関する脅威を検出することができます。
脅威の識別には機械学習が利用されております。
例えば、マルウェア、クリプトマイニング、パスワードポリシーの変更などの異常なAPIコール、未使用リージョンへのインスタンスのデプロイなどの脅威を検出できます。
料金は有料です。

【AWS Shield】
DDoS攻撃から保護することができます。

AWS Shieldには、下記の2種類があります。

  • AWS Shield Standard
    全てのユーザーに対して無料で提供される保護です。
    レイヤ3, 4の攻撃を防御できます。

  • AWS Shield Advanced
    有料で提供される保護です。
    EC2, ELB, CloudFrontなどに対して、レイヤ7のHTTPフラッド攻撃やDNSフラッド攻撃を防護できます。
    Standardの保護に加えて、WAFサービスが利用できます。

【AWS Macie】
S3に保存されたデータに対して機械学習を利用したデータ分類と異常アクセス検出を行うことができます。
料金は有料です。

  • データ分類
    個人情報や認証情報などの機密情報のほかに、アプリケーションのログやソースコードなどのデータを認識でき、分類結果はリスク判別のために利用されます。

  • 異常アクセスの検知
    AWS CloudTrailイベントログを利用して、パケットポリシーの変更や、普段アクセスのないユーザーがデータを大量にダウンロードする行動も検出できます。

【AWS CloudTrail】
AWSアカウント内で誰が、いつ、何を行ったのかの証跡をCloudTrailイベントに記録できます。
監査ログには、管理イベントログとデータイベントログの2種類があります。

監査ログの種類

例えば、EC2のインスタンス停止時に記録される管理イベントログです。
このログにより、testユーザーが、2021年07月28日 11:16:30に、インスタンスを停止するイベントが行われたことがわかります。

{
  "eventVersion": "1.05",
  "userIdentity": {
    "type": "IAMUser",
    "principalId": "abcd",
    "arn": "arn:aws:iam::1234:user/test",
    "accountId": "1234",
    "accessKeyId": "abcd",
    "userName": "test"
  },
  "eventTime": "2021-07-28T11:16:30Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "StopInstances",
  "awsRegion": "ap-northeast-1",
  "sourceIPAddress": "111.111.111.111",
  "userAgent": "console.ec2.amazonaws.com",
  "requestParameters": {
    "instancesSet": {
      "items": [
        {
          "instanceId": "i-abcdefg"
        }
      ]
    },
    "force": false
  },
  "responseElements": {
    "requestID": "1234-abcd-efgh",
    "instancesSet": {
      "items": [
        {
          "instanceId": "i-abcdefg",
          "currentState": {
            "code": 64,
            "name": "stopping"
          },
          "previousState": {
            "code": 16,
            "name": "runnning"
          }
        }
      ]
    }
  }
}

【AWS Config】
AWSリソースの設定のスナップショットや設定履歴を確認できます。
対応しているAWSリソースは、VPC、EC2、セキュリティグループなどの多くの種類があります。
料金は有料です。

機能は、
・設定スナップショット
・設定履歴
・AWS Configルール
があります。

  • 設定スナップショット
    特定の一時点の全てのリソースの設定情報を取得し、S3バケットに保存できます。

  • 設定履歴
    特定の期間内の特定のリソースの設定履歴を取得し、S3バケットに保存できます。

  • AWS Configルール
    AWSリソースの理想的な設定内容を定義し、環境の設定がそれに準拠しているかを判定してくれます。

【AWS Security Hub】
多数のアカウントにおける多様なセキュリティアラートに対して、一元管理と可視化ができます。
料金は有料です。
組織全体のコンプライアンスへの対応状況の把握を効率的に行いたい場合は利用してください。

統合できるAWSサービスは、下記があります。
・AWS Config: 設定履歴の記録
・GuardDuty: 脅威検出
・Inspector: 脆弱性診断
・Macie: 機密情報の検出

この記事が気に入ったらサポートをしてみませんか?