こんにちは。クラウドインテグレーション事業部の栗原です。
今回はAmazon GuardDutyで検知した脅威情報をSumo Logicを使って可視化してみたいと思います。
Amazon GuardDutyとは
GuardDutyは、AWSアカウントにおける悪意のある操作や不正な動作といった脅威を検出するマネージドサービスです。 aws.amazon.com
検出した脅威(イベント)は以下のような形で確認することができます。
これらをSumo Logicに取り込んで可視化します。
GuardDutyのログ収集
それではSumo Logicの設定を行っていきます。
ホスト型コレクタの設定
まずはログ転送用のHTTPエンドポイントを作成します。
Sumo Logicにログインし、[Manage Data] - [Collection] - [Add Source] を選択します。
[Hosted Collector]を選択します。
Nameに任意の値を入力し、[Save]を選択します。
[OK]を選択します。
HTTPソースの設定
ソース設定画面に遷移するので、[HTTP Logs & Metrics]を選択します。
Nameに「Amazon GuardDuty」、Source Categoryに「aws/guardduty」、 Formatに「yyyy-MM-dd'T'HH:mm:ss.SSS'Z'」、Timestamp locatorに「."updatedAt":"(.)".*」をそれぞれ入力し、[Save]を選択します。
ここまで完了するとURLが表示されます。後で必要になりますので記録しておきましょう。[OK]を選択すると画面が閉じます。
ソースに追加されていることが確認できました。
Lambda関数のデプロイ
次にGuardDutyで検出したイベントをSumo Logicに送信するためのLambda関数を作成します。 AWS Serverless Application Repositoryに公開されているGuardDutyイベント送信用のアプリケーションをAWSアカウントにデプロイするという手順となります。 aws.amazon.com
それではデプロイを行っていきます。
https://serverlessrepo.aws.amazon.com/applicationsにアクセスし、「sumologic-guardduty-events-processor」を検索、選択します。
遷移後の画面で[Deploy]を選択するとAWSマネジメントコンソールに遷移します。
[アプリケーションの設定] - [SumoEndpointUrl] に、先ほど取得したHTTPエンドポイントのURLを入力します。
ページ下部の[デプロイ]を選択することで、CloudFormationによるデプロイが開始します。
デプロイが完了し、Lambda関数が作成されました。
Lambdaの関数一覧でも作成されていることが確認できます。
最後に、Lambdaの環境変数を編集します。 環境変数に、キー「SOURCE_CATEGORY_OVERRIDE」値「aws/guardduty」を入力し、[保存]を選択します。
これでログ収集の設定はすべて完了です。
GuardDutyのサンプルイベント生成
ここまでの設定が完了するとSumo LogicにGuardDutyのイベントが送られるようになるのですが、今回はサンプルデータを利用して可視化を行います。 サンプルデータはマネジメントコンソールで生成することができます。
GuardDutyコンソールの [設定] - [結果のサンプル] で[結果サンプルの生成]を選択します。
生成されていることが確認できます。
GuardDutyアプリケーションのインストール
他の記事でも紹介していますが、Sumo Logicにはダッシュボードのテンプレート(App Catalog)が用意されています。 GuardDuty用のダッシュボードもありますのでインストールします。
左ペインのApp Catalogを選択し、GuardDutyを検索、選択します。
[Add to Library]を選択します。
App Nameに「Amazon GuardDuty」、Source Categoryに「aws/guardduty」と入力し、[Add to Library]を選択します。
Personalフォルダにダッシュボードが追加されました。
GuardDutyダッシュボード
App Catalogで以下のダッシュボードが作成されました。それぞれ見ていきたいと思います。
- Amazon GuardDuty - Overview
- Amazon GuardDuty - Details
- Amazon GuardDuty - CloudTrail Details
- Amazon GuardDuty - VPCs, Subnets, Security Group Details
Amazon GuardDuty - Overview
脅威の概要を表示するダッシュボードです。 脅威の重大度や目的(BackdoorやBehaviorなど)、発生地域などが各種グラフで表示されており、概要の把握に役立ちます。
Amazon GuardDuty - Details
脅威の詳細を表示するダッシュボードです。 脅威を目的、重大度、リソースタイプ、ポート、セキュリティグループ別に表示したり、今回は表示されていませんが脅威の外れ値の表示したりと詳細な情報が確認できます。
Amazon GuardDuty - CloudTrail Details
CloudTrailイベントに関連する脅威を表示するダッシュボードです。 脅威の目的や発生数などの詳細を確認できます。
Amazon GuardDuty - VPCs, Subnets, Security Group Details
脅威をVPC、セキュリティグループ、サブネットID別に表示するダッシュボードです。
さいごに
今回はGuardDutyの脅威情報をSumo Logicで可視化してみました。
事前に用意されているテンプレートを追加するだけで今回ご紹介したような便利なダッシュボードがすぐに利用できます。 これだけでも状況や傾向の把握はある程度できますし、もちろん必要に応じで新たにダッシュボードを作成することも可能です。
GuardDutyを有効化したものの活用できていないという方はSumo Logicを利用して可視化や分析を始めてみてはいかがでしょうか。