

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Inspector を使用した AWS Lambda 関数のスキャン
<a name="scanning-lambda"></a>

 AWS Lambda 関数とレイヤーの Amazon Inspector サポートは、継続的な自動化されたセキュリティ脆弱性評価を提供します。Amazon Inspector では、2 種類の Lambda 関数スキャンを提供しています。

**[Amazon Inspector Lambda 標準スキャン](https://docs.aws.amazon.com/inspector/latest/user/scanning_resources_lambda_exclude_functions.html)**  
 これはスキャンタイプは、デフォルトの Lambda スキャンタイプです。Lambda 関数とレイヤー内のアプリケーションの依存関係をスキャンして、[パッケージの脆弱性](findings-types.md#findings-types-package)について調べます。

**[Amazon Inspector Lambda コードスキャン](https://docs.aws.amazon.com/inspector/latest/user/scanning_resources_lambda_code.html)**  
 このスキャンタイプでは、Lambda 関数やレイヤー内のカスタムアプリケーションコードをスキャンして、[コードの脆弱性](findings-types.md#findings-types-code)について調べます。Lambda 標準スキャンをアクティブ化することも、Lambda コードスキャンと同時に Lambda 標準スキャンをアクティブ化することもできます。

 Lambda コードスキャンをアクティブ化する場合は、まず Lambda 標準スキャンをアクティブ化する必要があります。詳細については、「[スキャンタイプをアクティブ化する](https://docs.aws.amazon.com/inspector/latest/user/activate-scans.html)」を参照してください。

 Lambda 関数スキャンをアクティブ化すると、Amazon Inspector はアカウントに以下のサービスにリンクされたチャネル `cloudtrail:CreateServiceLinkedChannel` および `cloudtrail:DeleteServiceLinkedChannel` を作成します。Amazon Inspector はこれらのチャネルを管理し、それらを使用してスキャンのために CloudTrail イベントをモニタリングします。このチャネルにより、CloudTrail で証跡があったかのように、アカウントの CloudTrail イベントを表示できます。CloudTrail で独自の証跡を作成して、アカウントのイベントを管理することをお勧めします。これらのチャネルを表示する方法については、「*AWS CloudTrail ユーザーガイド*」の「[サービスにリンクされたチャネルの表示](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-service-linked-channels.html)」を参照してください。

**注記**  
 Amazon Inspector は、[カスタマーマネージドキーで暗号化された Lambda 関数](https://docs.aws.amazon.com/lambda/latest/dg/security-encryption-at-rest.html)のスキャンをサポートしていません。これは、Lambda 標準スキャンと Lambda コードスキャンに適用されます。

## Lambda 関数スキャンのスキャン動作
<a name="lambda-scan-behavior"></a>

Amazon Inspector はアクティベーション時に、アカウント内で過去 90 日間に呼び出された、または更新されたすべての Lambda 関数をスキャンします。Amazon Inspector は、次のような状況で Lambda 関数の脆弱性スキャンを開始します。
+ Amazon Inspector が既存の Lambda 関数を検出した時。
+ 新しい Lambda 関数が Lambda サービスにデプロイされた場合。
+ 既存の Lambda 関数またはそのレイヤーのアプリケーションコードまたは依存関係に更新がデプロイされた場合。
+ Amazon Inspector がデータベースに新しい共通脆弱性識別子 (CVE) 項目を追加し、その CVE が関数に関連している場合。

Amazon Inspector は、各 Lambda 関数が削除されるかスキャンから除外されるまで、そのライフタイム期間を通じてモニタリングします。

Lambda 関数の脆弱性の最終確認日は、**[アカウント管理]** ページの **[Lambda 関数]** タブから、または [https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListCoverage.html](https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListCoverage.html) API を使用して確認できます。Amazon Inspector は、以下のイベントに応じて Lambda 関数の **[最終スキャン日]** フィールドを更新します。
+ Amazon Inspector が Lambda 関数の初回スキャンを完了した時。
+ Lambda 関数の更新時。
+ Amazon Inspector が Lambda 関数を再スキャンしたとき。これは、その関数に影響する新しい CVE 項目が Amazon Inspector データベースに追加されたためです。

## サポートされているランタイムと対象となる関数
<a name="supported-functions"></a>

Amazon Inspector は、Lambda 標準スキャンと Lambda コードスキャンのさまざまなランタイムをサポートしています。各スキャンタイプでサポートされているランタイムのリストについては、「[サポートされているランタイム: Amazon Inspector Lambda 標準スキャン](supported.md#supported-programming-languages-lambda-standard)」と「[サポートされているランタイム: Amazon Inspector Lambda コードスキャン](supported.md#supported-programming-languages-lambda-code)」を参照してください。

Lambda 関数が Amazon Inspector スキャンの対象となるには、ランタイムがサポートされていることに加えて、以下の基準を満たす必要があります。
+ この関数は過去 90 日間に呼び出されたか、または更新されています。
+ この関数は `$LATEST` にマークされています。
+ この関数はタグによるスキャンから除外されていません。

**注記**  
過去 90 日間に呼び出されたり変更されたりしていない Lambda 関数は、自動的にスキャンから除外されます。Amazon Inspector は、再度呼び出されたり、Lambda 関数コードに変更が加えられたりする場合に、自動的に除外された関数のスキャンを再開します。

# Amazon Inspector Lambda 標準スキャン
<a name="scanning_resources_lambda"></a>

Amazon Inspector Lambda 標準スキャンでは、Lambda 関数のコードとレイヤーに追加したアプリケーションパッケージの依存関係内にあるソフトウェアの脆弱性を特定します。たとえば、Lambda 関数が既知の脆弱性があるバージョンの `python-jwt` パッケージを使用している場合、Lambda 標準スキャンはその関数の検出結果を生成します。

Amazon Inspector が Lambda 関数のアプリケーションパッケージの依存関係に脆弱性を検出すると、Amazon Inspector は詳細な**パッケージ 脆弱性**タイプの検出結果を生成します。

スキャンタイプをアクティブ化する手順については、「[スキャンタイプをアクティブ化する](activate-scans.md)」を参照してください。

**注記**  
Lambda 標準スキャンでは、Lambda ランタイム環境にデフォルトでインストールされる AWS SDK 依存関係はスキャンされません。Amazon Inspector は、関数コードとともにアップロードされた依存関係、またはレイヤーから継承された依存関係のみをスキャンします。

**注記**  
Amazon Inspector Lambda 標準スキャンを非アクティブ化すると、Amazon Inspector Lambda コードスキャンも非アクティブ化になります。

# Lambda 標準スキャンから関数の除外
<a name="scanning_resources_lambda_exclude_functions"></a>

 Lambda 関数にタグを追加して、Amazon Inspector Lambda 標準スキャンから除外することができます。スキャンから関数を除外すると、実行不可能なアラートを防ぐことができます。除外する関数にタグを付ける場合、タグには次のキーと値のペアが必要です。
+  キー: `InspectorExclusion` 
+  値: `LambdaStandardScanning` 

 このトピックでは、スキャンから除外する関数にタグを付ける方法について説明します。Lambda へのタグの追加について詳しくは、「[Lambda 関数でのタグの使用](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html)」を参照してください。

**スキャンから関数を除外するには**

1.  認証情報を使用してサインインし、Lambda コンソール ([https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/)) を開きます。

1.  ナビゲーションペインで、**[関数]** を選択します。

1.  Amazon Inspector Lambda 標準スキャンから除外する関数の名前を選択します。

1.  **[Configuration]** (設定)、**[Tags]** (タグ) の順に選択します。

1.  **[タグを管理]**、**[新しいタグを追加]** の順に選択します。

   1. **[Key]** (キー) に「`InspectorExclusion`」と入力します。

   1.  **[Value]** (値) に「`LambdaStandardScanning`」と入力します。

1.  **[保存]** を選択します。

# Amazon Inspector Lambda コードスキャン
<a name="scanning_resources_lambda_code"></a>

**重要**  
 この機能では、Lambda 関数のスニペットをキャプチャして、検出された脆弱性をハイライトします。これらのスニペットでは、ハードコーディングされた認証情報やその他の機密の内容が表示される場合があります。

 この機能を使用すると、Amazon Inspector は Lambda 関数でアプリケーションコードをスキャンし、AWS のセキュリティのベストプラクティスに基づいてコードの脆弱性を検出して、データ漏洩、インジェクションの欠陥、暗号化の欠落、暗号化の弱さを見つけます。Amazon Inspector は、自動推論と機械学習を使用して Lambda 関数アプリケーションコードを評価します。また、Amazon Q と共同で開発された内部ディテクターを使用して、ポリシー違反と脆弱性を識別します。

 Amazon Inspector は、Lambda 関数アプリケーションコードで脆弱性を検出すると、[コードの脆弱性](https://docs.aws.amazon.com/inspector/latest/user/findings-types.html#findings-types-code)を生成します。この検出結果タイプには、問題と、コード内のその問題を見つけることができる場所を示すコードスニペットが含まれています。また、問題を修正する方法も提案します。提案には、脆弱なコード行を置き換えるために使用できるプラグアンドプレイのコードブロックが含まれます。これらのコード修正は、この検出結果タイプに対する一般的なコード修正ガイダンスに加えて提供されます。

 コード修復の提案には、自動推論を利用しています。一部のコード修復提案は、意図したとおりに機能しない場合があります。採用するコード修正案に対する責任はユーザーにあります。採用する前に、必ず修正案を確認してください。コードが意図したとおりに動作するように、編集が必要になる場合があります。詳細については、「[責任ある AI ポリシー](https://aws.amazon.com/machine-learning/responsible-ai/policy/)」を参照してください。

 Lambda コードスキャンをアクティブ化する場合は、まず Lambda 標準スキャンをアクティブ化する必要があります。詳細については、「[スキャンタイプをアクティブ化する](https://docs.aws.amazon.com/inspector/latest/user/activate-scans.html)」を参照してください。この機能をサポートしている AWS リージョンについては、「[リージョン固有機能の可用性](inspector_regions.md#ins-regional-feature-availability)」を参照してください。

## コードの脆弱性検出結果におけるコードの暗号化
<a name="lambda-code-encryption"></a>

 Amazon Q は、Lambda コードスキャンを使用したコード脆弱性の検出結果に関連して検出されたコードスニペットを保存します。デフォルトでは、Amazon Q はコードの暗号化に使用される [AWS 所有キー](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk)を制御します。ただし、Amazon Inspector API を通じた暗号化のために、独自のカスタマー管理キーを使用できます。詳細については、「[検出結果のコードの保管時の暗号化](encryption-rest.md#encryption-code-snippets)」を参照してください。

# Lambda コードスキャンから関数の除外
<a name="scanning_resources_lambda_code_exclude_functions"></a>

 Lambda 関数にタグを追加して、Amazon Inspector Lambda コードスキャンから除外することができます。スキャンから関数を除外すると、実行不可能なアラートを防ぐことができます。除外する関数にタグを付ける場合、タグには次のキーと値のペアが必要です。
+  キー – `InspectorCodeExclusion` 
+  値 – `LambdaCodeScanning` 

 このトピックでは、コードスキャンから除外する関数にタグを付ける方法について説明します。Lambda へのタグの追加について詳しくは、「[Lambda 関数でのタグの使用](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html)」を参照してください。

**コードスキャンから関数を除外するには**

1.  認証情報を使用してサインインし、Lambda コンソール ([https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/)) を開きます。

1.  ナビゲーションペインで、**[関数]** を選択します。

1.  Amazon Inspector Lambda コードスキャンから除外する関数の名前を選択します。

1.  **[Configuration]** (設定)、**[Tags]** (タグ) の順に選択します。

1.  **[タグを管理]**、**[新しいタグを追加]** の順に選択します。

   1. **[Key]** (キー) に「`InspectorCodeExclusion`」と入力します。

   1.  **[Value]** (値) に「`LambdaCodeScanning`」と入力します。

1.  **[保存]** を選択します。