[re:Invent 2022レポート] Amazon Inspectorを使用したAWS Lambda関数の脆弱性の検出セッションに参加してきました

この記事を書いたメンバー:

Daiki Handa

[re:Invent 2022レポート] Amazon Inspectorを使用したAWS Lambda関数の脆弱性の検出セッションに参加してきました

目次

こんにちは、半田(@handy)です。現在ラスベガスで開催されているre:Invent2022に現地参戦しています。
今回11/28にAmazon InspectorがLambda関数の脆弱性検査に対応したリリースがありましたが、その機能についてのBeakout Sessionを聞いてきましたので、簡単に内容を共有します。


参加セッション

SEC217:[NEW LAUNCH!] Detecting vulnerabilities in AWS Lambda functions using Amazon Inspector
※Keynoteで発表があった後に追加されたセッションにはタイトル先頭に「NEW LAUNCH!」が付いてます

セッション紹介

Developers are moving toward serverless compute, like AWS Lambda, for reduced infrastructure management, more efficient scaling, and reduced costs, but serverless workloads must be monitored for vulnerabilities in application code. In this session, learn how you can now use Amazon Inspector to detect vulnerabilities in your AWS Lambda functions in addition to software vulnerabilities and unintended network exposure in Amazon EC2 and container-based workloads. Learn now Amazon Inspector automatically discovers and inventories all existing and newly created Lambda functions for scanning and continually monitors to automatically detect issues. Inspector gives you a single view of your workload vulnerabilities and helps you prioritize remediation through its highly contextualized severity scoring.

セッション紹介(DeepL による翻訳)

開発者は、インフラ管理の軽減、より効率的なスケーリング、コスト削減のために、AWS Lambdaのようなサーバーレスコンピュートに移行していますが、サーバーレスワークロードは、アプリケーションコードの脆弱性を監視する必要があります。このセッションでは、Amazon EC2やコンテナベースのワークロードにおけるソフトウェアの脆弱性や意図しないネットワークの露出に加えて、Amazon Inspectorを使用してAWS Lambda関数の脆弱性を検出できるようになった方法について説明します。今すぐ学ぶ Amazon Inspectorは、既存の、そして新しく作成されたすべてのLambda関数を自動的に検出してスキャン用にインベントリ化し、継続的に監視して自動的に問題を検出します。Inspectorは、ワークロードの脆弱性を一望でき、高度に文脈化された深刻度スコアリングにより、修復の優先順位付けを支援します。


概要

会場の様子です。このセッションは2名のAWSの方が登壇されてました。


最初にAmazon Inspectorの説明があり、これまではEC2インスタンスとECRイメージの脆弱性スキャン及び管理しかできませんでしたが、今回のアップデートでLambda関数も対応になったと説明がありました。


Inspectorが解決する問題として、以下の4つが上げられていました。

  • クラウド向けの脆弱管理の構築
  • ニアリアルタイムでの脆弱性管理
  • 全インスタンスタイプに対応したソリューション
  • パッチ適用とチケット発行の自動化


Inspectorには、①アクティベーション・管理、②継続的脆弱性監視、③結果の優先順位付けの仕組みが提供されており、Organizationとの統合やアカウントを跨いだ集中管理、対象リソースの自動検出・スキャンと脆弱性に対してのリスクスコア付けなどが可能となっています。
Inspectorを利用することで、ユーザーはリスクの管理と迅速な対応が可能になります。


AWS LambdaはServerlessの責任共有モデルが適用されるため、ユーザーで管理が必要なのはコードとライブラリ、あとはリソースの構成とアクセス管理において責任を負うようになっています。
今回のアップデートでは、その中でもLambdaの関数コードとレイヤーで使用されるパッケージの依存関係ソフトウェア脆弱性を検知することができるようになりました。
Inspectorコンソールから有効化することで、既存のEC2やECRと同じように継続的な監視や検出が可能になっています。90日間実行されていない関数は検知対象から自動除外され、タグベースで手動で除外対象を追加することもできます。


実際のデモもありました。

アカウント単位かOrganizationでInspectorが有効化されていればコンソールから確認ができ、Organizationで有効化されていれば各アカウントでEC2/ECR/Lambdaのどのサービスのスキャンが有効化されているかまとめて確認することができるようです。
手元で確認してみたところ、既にInspectorを有効化している場合はLambdaスキャンはデフォルト無効化されているようですので、個別に有効化設定が必要みたいです。


料金ですが、月のスキャンした関数に対して課金されるようになっており、バージニア北部リージョンでは関数あたり$0.3/月ほどかかります。課金はInspectorに関数が登録されてから関数が削除されるかスキャン対象から除外されるまでかかるようです。
※もしスキャンが1ヶ月未満だった場合は、スキャンした時間に比例して課金されます

スキャンさせたくない関数があるのであれば、Inspectorコンソールから除外すれば課金対象からは外したほうがよいですね。

スライドでは料金例もあり、以下のような計算方法でした。この際、期間中の再スキャンには追加料金は発生しないようなので、その辺りは気にしなくても良さそうです。

  • 30日間スキャンされた10この関数=$0.3×10関数×1ヶ月=$3/月
  • 15日間スキャンされた10個の関数=$3.0×10関数×0.5か月=$1.5/月
  • 計$4.5/月


さいごに

セッションの最後には参加者から登壇者に対しての質問がいくつも出ていて、関心の高さがうかがえました。(質問がほとんど出ないセッションもあるので)
以下の記事にあるような使用されていないLambdaレイヤーは脆弱性スキャンを行わないなどの詳細までは説明がなく、まだまだ知らない情報もありそうでしたので、その辺りは日本に帰ってから検証しようかと思っています。

https://aws.amazon.com/jp/blogs/aws/amazon-inspector-now-scans-aws-lambda-functions-for-vulnerabilities/


カテゴリー
タグ

この記事を書いたメンバー

SAPシステムや基幹システムのクラウド移行・構築・保守、
DXに関して
お気軽にご相談ください

03-6260-6240 (受付時間 平日9:30〜18:00)