経緯
Amazon Inspecter v2(以降は『Inspecter』と呼ぶ)が検出した脆弱性に対応するため、ライブラリのアップデートを実施した。しかし Inspecter の検出結果にはライブラリを更新した結果が反映されていなかった。
1時間後に Inspecter の検出結果を再確認すると、ライブラリアップデートで対応した脆弱性は検出されなくなっていた。これでもよいのだが、上司や顧客に対応済であることをすぐに証明できるよう、Inspecter の検出結果にライブラリアップデートした内容がすぐに反映できるようにしたい。
結論
AWS Systems Manager (以降は『SSM』と呼ぶ)のステートマネージャーにある、 InspectorInventoryCollection-do-not-delete の関連付けを今すぐ適用させることで、スキャン結果をすぐに表示できる。
補足
AWS公式サイトによると、Inspecter の EC2 スキャンには2通りの方式があるとのこと。
今回ライブラリのアップデートを行った EC2 インスタンスは、SSM のエージェントがインストールされたマネージドインスタンスであったため、Inspecter はエージェントベースのスキャンを実施していた。
またエージェントベースのスキャンでは、Inspecter は EC2 インスタンスのソフトウェアアプリケーションインベントリ収集のため、SSM のステートマネージャーの InspectorInventoryCollection-do-not-delete という名前の関連付けを自動作成し利用する。
Amazon Inspector では、ソフトウェアアプリケーションインベントリを収集するために、お客様のアカウントに Systems Manager ステートマネージャーの関連付けが必要です。まだ存在しない場合は、Amazon Inspector によって InspectorInventoryCollection-do-not-delete という名前の関連付けが自動的に作成されます。
ただ自動作成された InspectorInventoryCollection-do-not-delete の関連付けはデフォルトだと30分毎に実施されるため、検出結果にはすぐに反映されない。
Amazon Inspector は、初回スキャンが完了すると EC2 インスタンスの [最終スキャン日] フィールドを更新します。この後、Amazon Inspector が SSM インベントリを評価したとき (デフォルトでは 30 分ごと)、またはインスタンスに影響を与える CVE が Amazon Inspector データベースに新たに追加されたためにインスタンスが再スキャンされたときに、[最終スキャン日] フィールドが更新されます。
よって検出結果にスキャン結果をすぐに反映したい場合は、関連付け今すぐ適用させると反映できる。
Inspecter は v2 になってからは SSM マネージドインスタンスに対して自動スキャンしてくれる便利な機能なので、随時使いこなしていきたい。
参考文献