AWSのセキュリティ脆弱性診断ツールAmazon Inspectorを紹介😎マネージドサービスで効率アップ!

AWSのセキュリティ脆弱性診断ツールAmazon Inspectorを紹介😎マネージドサービスで効率アップ!

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!

AWS ではアプリケーションの実装だけではなく、DevOps に対してもたくさんのセキュリティ評価ツールが提供されています。本記事では、その中でも私たちがよく利用するアプリケーションの脆弱性評価ツール Amazon Inspector を紹介します!

想定する読者

  • AWS で脆弱性を診断する方法を知りたいヒト
  • 脆弱性評価ツール Amazon Inspector について知りたいヒト

はじめに

AWS には、アプリケーション・ホスト OS だけではなく、DevOps に対しても様々なセキュリティ脆弱性を検出・評価する仕組みが提供されています。本記事では Amazon Inspector を用いたアプリケーションのセキュリティ評価を紹介しますが、興味のある方は以下を参考に AWS のセキュリティ運用を検討してみてください。

AWS サービス名ユースケース
AWS Security Hub統合されたセキュリティとコンプライアンスセンター
Amazon GuardDutyマネージド型脅威検出サービス
Amazon Inspectorアプリケーションのセキュリティを分析
AWS ConfigAWS リソースの設定を記録して評価
AWS CloudTrailユーザーアクティビティと API 使用状況の追跡

脆弱性診断をせずにシステムを運用した場合、アカウントのスロットリングや情報漏洩などさまざまな運用面でのリスクが懸念されます。システムの規模等に関係なくセキュリティ性対策は万全に行いましょう。

Amazon Inspector の概要

Amazon Inspectorとは

Amazon Inspector は、AWS に展開したアプリケーションのセキュリティ・コンプライアンスを向上させるセキュリティ評価サービスです。自動的にアプリケーションを評価し、AWS での脆弱性やベストプラクティスとの相違を確認します。

アプリケーション評価について、スケジュール設定や、任意の Amazon CloudWatch(または EventBridge )イベントによる評価実施の設定も可能です。評価のタイミングを設定できるため、セキュリティチェック関連の管理もしやすくなります。

Amazon Inspector の利点

  • 指定のタイミングで自動的にセキュリティ評価を行える
  • 評価にはベストプラクティスをもとにしたルールパッケージを使用できるため、ルールを確立・適用するプロセスを簡素化できる
  • 対象アプリケーションのパフォーマンスに影響を及ぼすことなく、セキュリティ対策を行える
  • 無料トライアルも設けており、導入を検討しやすい ※評価回数・日数等の条件付き

Amazon GuardDuty との違い

セキュリティに関わるサービスとして、AWS 環境や AWS アカウントに対する攻撃を検知する「Amazon GuardDuty」が存在します。

Amazon Inspector は、脆弱性に対処できているかを事前に診断・評価するサービスですが、それに対して Amazon GuardDuty は、実際に起こった悪意ある攻撃を検出するサービスです。

本記事では Amazon Inspector にフォーカスしていますが、実際にリソースが攻撃された際に役立つ「Amazon GuardDuty」との違いについても理解しておきましょう。

他のサービスとの組み合わせも可

Amazon Inspector は、Amazon の他のサービスと組み合わせて使用することも可能です。Amazon Inspector と組み合わせて使えるサービスおよび実現できることをまとめました。

  • Amazon SNS を統合し、マイルストーンの監視や障害、例外の期限切れについて通知を行う
  • Amazon CloudTrail を統合し、 Amazon Inspector API への呼び出しのログを作成
  • Amazon CloudWatch Logs によって Amazon Inspector のモニタリング raw データを収集し、ほぼリアルタイムで読み取り可能な状態に加工

Amazon Inspector の操作

Amazon Inspector を導入

ここからは、実際に Amazon Inspector の導入・操作をしていきます。まずは Amazon Inspector ページの「Amazon Inspector の使用開始」ボタンを押下します。

下記画面に遷移しますので、「今すぐ始める」を押下します。

Amazon Inspector のセットアップを行います。必要事項にチェックを入れたら、青いボタンを押下します。

ダッシュボードに遷移したら、セットアップ完了です。Amazon Inspector によるセキュリティ評価結果や評価対象、評価の際のルール等はこのダッシュボードおよび左サイドのメニューから確認できます。

評価ターゲットの設定

次に、評価ターゲットを設定していきます。評価ターゲットとは、セキュリティ評価対象となる Amazon EC2 インスタンスの集合を指します。

インスタンスすべてを評価することはもちろん、評価ターゲットの設定時にタグを指定することで、タグで紐づいた一部のインスタンスを評価することも可能です。

Amazon Inspector をセットアップするとデフォルトで評価ターゲットが入っていますが、ここでは新規で作成してみます。

「評価ターゲット」画面に遷移し、「作成」を押下すると下記の画面に移ります。必要項目を入力して保存すると、評価ターゲットの設定は完了です。なお、タグは評価対象のリソースに付与したタグと同じものを入力してください。

なお、エージェントをインストールする場合は「 Install Agents (エージェントのインストール)」にチェックを入れます。( EC2 インスタンスに SSM エージェントがインストールされていることと、Run Command を許可する IAM ロールが導入されていることが前提)

「成功」が表示されました。評価ターゲット一覧には、先ほど入力した評価ターゲットの名前が追加されています。

評価テンプレートの設定

ここからは、評価テンプレートを設定します。評価テンプレートとは、評価対象となるターゲット・評価項目を設定したものです。具体的には、下記のものが含まれます。

  • 評価ターゲットを評価するためのルールパッケージ
  • 評価実行期間
  • Amazon Simple Notification Service (SNS)トピック(評価の実行状態・結果の通知送信先)
  • 評価の実行によって生成された結果を割り当てる Amazon Inspector 固有の属性

評価テンプレートを設定するには、まず左側のサイドメニューから「評価テンプレート」画面に遷移しましょう。

任意の名前を入力し、ターゲット名は評価対象として設定する評価ターゲットを選択します。その他必要項目を入力し、作成ボタンを押下すれば設定は完了です。

設定した評価テンプレートが、評価テンプレート一覧に表示されました。これで評価テンプレートの設定は完了です。

評価を実行する

評価ターゲット・評価テンプレートが完成したら、評価テンプレート画面を操作して評価を実行します。実行する評価テンプレートのチェックボックスにチェックを入れ、「実行」ボタンを押下してください。

プログラムに基づいてセキュリティチェックが実行されます。結果は左サイドメニューの「結果」ページを参照します。

脆弱性が疑われたら

Amazon Inspector を実行し、対象の脆弱性が疑われる場合、自身で対処することになります。

Amazon Inspector はあくまでも評価を実行するためのツールですので、設定変更やパッチ適用など、対応方法を自身で検討する必要があります。

なお、Amazon Inspector 実行後はセキュリティ上の目標やアプローチに基づいて重大度、緊急度、ユーザーの関心度が様々に異なる結果のリストが生成されます。対応の優先順位を考えるときなどに参考にしましょう。

Tips

脆弱性を是正できず外部から攻撃を受けた際には Amazon GuardDuty を使用して攻撃を検出することになりますが、その際の報告先を紹介します。

AWS の脆弱性レポート

AWSでは「脆弱性レポート」のページを設け、報告されたセキュリティ問題への対応を随時行っています。実際に AWS で脆弱性が疑われた場合は、速やかに報告しましょう。

脆弱性が疑われるサービスによって連絡先は異なります。

脆弱性の報告について

脆弱性レポートについて、対象サービス・事象ごとの報告方法をまとめました。

対象サービス・事象報告方法
AWS クラウドサービス
オープンソースプロジェクト
aws-security@amazon.com まで連絡
(メールを保護する場合、
PGP キーの使用が可能)
AWS リソース不正使用abuse@amazonaws.com
AWS の不正使用チーム宛に連絡
AWSコンプライアンス関連「AWS コンプライアンスお問い合わせ」
のフォームを利用

また、レポートを送信する場合は、下記の事項に気を付けましょう。

  • 参考資料 (実証コード、ツール出力など) も併せて送信する
  • 問い合わせ後の追跡番号を控える

レポートを送信すると、AWS はサービスの脆弱性を検証します。問題の検証・再現のために追加情報を求められる場合もありますので、その際は速やかに情報を提出しましょう。調査完了後は、結果と解決策が AWS から送られるので確認してください。

なお、サードパーティ製品に影響する脆弱性の場合は、AWS から影響を受けるテクノロジーの所有者に通知されます。報告者とサードパーティの間の調整は AWS 側が行ってくれます。

脆弱性レポートの対応範囲

AWS では、以下の行動については対応範囲外に指定されています。

  • AWS のユーザー・従業員のアカウントの侵害による情報漏洩リスク
  • AWS 製品・AWS のユーザーに対するサービス拒否 ( DoS ) 攻撃
  • AWS の従業員やオフィス、データセンターに対する物理的な攻撃
  • AWS の従業員や請負業者、ベンダー、サービスプロバイダーに対するソーシャルエンジニアリング
  • マルウェアの意図的な投稿や送信、アップロード、リンク
  • 迷惑メッセージ (スパム) を利用した脆弱性の追跡

まとめ

以上、脆弱性診断の自動化サービス「Amazon Inspector」を中心に、アプリケーションの脆弱性診断・対応について紹介しました。無料トライアルからの導入が可能ですので、アプリケーションのセキュリティ向上のためにぜひ導入してみてください。

このブログでは、AWS 関連の記事をどんどん公開しております。ご興味のある方はぜひ他の記事もご覧ください。

またAWSに関する開発相談は、お気軽にお問い合わせください。