【AWS】SecurityHubの検出結果をメール通知する方法


はじめに

SecurityHubの強力な機能の一つに、検出結果を外部に通知できる点があります。検出された脆弱性やリスクをタイムリーに把握し、迅速な対応を行うことが重要です。本記事では、EventBridgeとSNSを使って検出結果をメール通知する方法をご紹介します。

通知の重要性

セキュリティインシデントへの初動対応は非常に重要です。検出された脆弱性やリスクに早期に気づき、適切な対策を講じることで、被害の拡大を防ぐことができます。SecurityHubの検出結果を通知することにより、関係者に速やかに状況を知らせ、素早い対応を可能にします。

通知設定手順

簡単ではありますが今回設定するイメージです。SecurityHubがイベントを検知すると、EventBridge、SNSと連携しメール通知を行います。

前提
以下を前提に作業をすすめていきます。
・SecurityHubがすでに有効化されている
  ※もしSecurityHub未設定の場合はこちらを参考に
・SNSに設定するアクティブなメールアドレスが用意されている

作業工程
作業工程としては以下の順で進めていきます。
①SNSの設定
②EventBridgeの設定

①SNSの設定
まずは、SNSの設定をしていきます。
1.AWS コンソールにログインし、「SNS」を選択します。
2.左側メニューの「トピック」をクリック
3.「トピックの作成」をクリックします。

4.トピックの設定
トピック設定画面が開きますので、各入力項目を設定していきます。
タイプ:スタンダードを選択
名前:適宜入力します
表示名:入力はしてもしなくても可

入力は以上となります。最下段の「トピックの作成」をクリックします。
SNSトピックが出来上がります。次にサブスクリプションの設定をします。

5.SNS左側メニュー 「サブスクリプション」をクリック

6.サブスクリプション設定
サブスクリプション設定画面が開きますので各入力項目を設定していきます。
トピック:先程作成したSNSトピックを選択
プロトコル:Eメールを選択
エンドポイント:受信用のメールアドレス※を入力します
※アクティブなメールアドレスを入力してください。後ほど確認のメールがアドレス宛に届きます。

入力は以上となります。最下段の「サブスクリプションの作成」をクリックします。
SNSサブスクリプションが出来上がります。作成されると同時に設定した
メールアドレス宛てに確認のメールが届きます。メールBoxを確認してみましょう。

7.メールの確認
設定したメールアドレスのメールBoxを開きます。
以下のようなメールが届いてますので、本文中の「Confirm subscription」をクリックします。

クリック後、以下画像のようなページに遷移したら確認完了です。

これでSNSの設定は完了です。次にEventBridgeの設定をします。

②EventBridgeの設定
ここからはEventBridgeの設定をしていきます。
1.AWS コンソール「EventBridge」を選択します。
2.左側メニューの「ルール」をクリック
3.「ルールを作成」をクリックします。

設定画面が開きますので、各入力項目を設定していきます。
名前:適宜入力します
説明:入力はしてもしなくても可
イベントバス:default
ルールタイプ:イベントパターンを持つルールを選択
「次へ」

イベントソース:AWSイベントまたはEventBridgeパートナーイベントを選択

サンプルイベントは空白でもよいです。
もし、サンプルを確認したい場合は入力してみましょう。下記画像のように入力するとSecurityHubが検知した際にどのようなイベントが発生するかを確認することができます。(JSON形式)

メソッド:パターンフォームを使用する
イベントソース:AWSのサービス
AWSのサービス:SecurityHub
イベントタイプ:Security Hub Findings - Imported
イベントパターン:自動でJSONが書き込まれますのでそのまま
「次へ」

イベントパターンについては、デフォルトの記載のままだと、検知したすべてを通知することになります。以下はすべての検知を通知する例です。

{
  "source": ["aws.securityhub"],
  "detail-type": ["Security Hub Findings - Imported"]
}

※※※ もし、通知をフィルタリングしたい場合、重要度CRITICALやHIGHに限定して通知するというようなこともできます。
例ですが、重要度HIGHとCRITICALの場合に通知する設定です。severityでフィルタリングをかけます。

{
  "source": ["aws.securityhub"],
  "detail-type": ["Security Hub Findings - Imported"],
  "detail": {
    "findings": {
      "Severity": {
        "Label": ["HIGH", "CRITICAL"]
      }
    }
  }
}

ターゲットタイプ:AWSのサービス
ターゲットを選択:SNSトピック
トピック:先程作成したSNSトピックを選択
「次へ」

タグの設定はそのまま「次へ」をクリックします。
最終確認画面がでますので、最下段「ルールを作成」をクリックすれば、
イベントが出来上がります。

これで通知設定は完了です。

通知メールの例

SecurityHubで新しい検出結果が発生すると、指定のメールアドレスに通知が届くようになります。
件名が「AWS Notification Message」
メール本文はJSON形式のこんなメール(下記画像)が届きます。。

メール本文は見やすくなるようカスタマイズもできます。
それは次回にでも紹介したいと思います。


まとめ

以上のように、EventBridgeとSNSを連携させることで、SecurityHubの検出結果を確実にキャッチでき、迅速な対応が可能になります。セキュリティ対策を強化するため、今回紹介した通知機能は、漏れずに設定していただければと思います。


関連記事

【初めてのAWS】まずはSecurityHubを有効化しよう


いいなと思ったら応援しよう!