初心者でも簡単にできるAmazon Inspectorによる脆弱性診断

EC2インスタンスに対して、Amazon Inspectorを利用して共通脆弱性識別子 (CVE)に関しての評価を行う手順を紹介します。

手順通り行えば、診断のテンプレート作成、診断の実行ができます。

事前準備

Amazon Inspectorを動作させて、サーバーのセキュリティ状態を評価するためにはまず、サーバーにエージェントを入れる必要があります。

評価テストを動作させたいインスタンスにログイン後、以下のエージェント導入手順を行い、インストールを行ってください。

Amazon Inspectorエージェント導入手順

インストーラーをダウンロードするため、まずは適当な作業ディレクトリへ移動します。ここでは、開始位置の下にInspectorディレクトリを作成し、そこに配置しています。

$ mkdir inspector
$ cd inspector
$ wget https://d1wk0tztpsntt1.cloudfront.net/linux/latest/install
$ sudo bash install 

こちらでインストールが完了します。ダウンロードやインストールが失敗した場合には、DLのリンクなどが更新されている可能性がありますので、公式サイトを確認して下さい。

Amazon Inspector エージェントをインストールする

Amazon Inspectorの評価ターゲットを作成する

Amazon Inspectorでは、指定したインスタンス(複数可)をターゲットに、評価を行う事ができます。

ターゲットはグループとして作成し、評価テンプレートと合わせることで自動的に指定した期間で繰り返すことができます。

まずはターゲットを作成します。

サービスより、Amazon Inspectorを選択、評価ターゲット→作成をクリックします。

こちらが作成画面です。

All Instancesにチェックを入れれば、エージェントが入っているすべてのインスタンスに対して実行が可能です。

絞り込みたい場合には、Use Tagsを選択し、対象のインスタンスを絞り込む(もしくはここで新規タグを作り、インスタンスにタグ付けする)ことが可能です。

今回はNameタグにamazon-linux2がついているインスタンスを指定しました。

作成をクリックすると、ターゲットの作成が完了します。

Amazon Inspectorの評価テンプレートを作成する

今度は評価する内容に関してテンプレートを作成します。

評価テンプレート→作成で以下画面のように入力します。

名前:テンプレートの名前です。わかるように任意でつけて下さい。

ターゲット名:評価を実行するターゲットです。先程作成したターゲットを選択しています。

ルールパッケージ:今回はCommon Vulnerabilities and Exposures-1.1(共通脆弱性識別子 (CVE)に関しての評価)を試します。

所要時間:実行時間を指定します。推奨は1時間のため、1時間に設定しました。

SNS トピック:実行開始時、実行終了時、報告された結果などをSNSで通知可能です。必要であれば設定しましょう。

Assessment Schedule:定期的に実行が可能で、デフォルトは7日ごとに実行になっています。単発だけであればチェックを外しましょう。

以上を設定して作成をクリックすればテンプレートが作成されます。

Amazon Inspectorの評価を実行する

テンプレートから評価を実行してみましょう。

作成後に一覧表示し、対象の評価テンプレートを選択すると以下のような画面が出ます。

こちらから、実行をクリックすると、以下のように評価が自動的に実行されて、「データを収集中」に切り替わり、設定した時間が経過すると結果が表示されます。

1時間で設定しましたので、1時間待ちます。現在の実行時間に関しては、左側の評価の実行からステータスを表示をクリックすると確認できます。

Amazon Inspectorの評価実行結果を見る

評価が完了すると、左側の結果より、評価結果を見ることができます。

今回は、共通脆弱性識別子 (CVE)に関しての評価ですので、上記項目にCVE番号が結果の中に含まれていると思います。

各項目ごとに分かれており、優先度も表示されます。

対応方法に関しては、各項目の詳細画面より推奨事項で確認できます。

画像のケースの場合にはアップデートをして対応をしてくださいといった内容ですね。

診断したいルールパッケージを選び、定期的に実行して対応することでセキュアな状態を保つ事ができます。