

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Amazon Inspector 掃描 AWS Lambda 函數
<a name="scanning-lambda"></a>

 Amazon Inspector 支援 AWS Lambda 函數和層，提供持續自動化的安全漏洞評估。Amazon Inspector 提供兩種類型的 Lambda 函數掃描：

**[Amazon Inspector Lambda 標準掃描](https://docs.aws.amazon.com/inspector/latest/user/scanning_resources_lambda_exclude_functions.html)**  
 此掃描類型是預設的 Lambda 掃描類型。它會掃描 Lambda 函數和 layer 中的應用程式相依性，以找出[套件漏洞](findings-types.md#findings-types-package)。

**[Amazon Inspector Lambda 程式碼掃描](https://docs.aws.amazon.com/inspector/latest/user/scanning_resources_lambda_code.html)**  
 此掃描類型會掃描 Lambda 函數和 layer 中的自訂應用程式程式碼，以找出[程式碼漏洞](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 函數索引標籤或使用 [https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListCoverage.html](https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListCoverage.html) API **檢查 Lambda 函數**上次檢查漏洞的時間。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 函數會自動從掃描中排除。如果再次叫用 或 Lambda 函數程式碼有所變更，Amazon Inspector 會繼續掃描自動排除的函數。

# 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 只會掃描使用函數程式碼上傳或從 layer 繼承的相依性。

**注意**  
停用 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.  使用您的登入資料登入，然後在 https：//[https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/). 開啟 Lambda 主控台。

1.  從導覽窗格中，選擇**函數**。

1.  選擇您要從 Amazon Inspector Lambda 標準掃描中排除的函數名稱。

1.  選擇 **Configuration** (組態)，然後選擇 **Tags** (標籤)。

1.  選擇**管理標籤**，然後選擇**新增標籤**。

   1. 在 **Key** (索引鍵) 欄位，輸入 `InspectorExclusion`。

   1.  對於 **Value** (值)，輸入 `LambdaStandardScanning` 

1.  選擇 **Save** (儲存)。

# Amazon Inspector Lambda 程式碼掃描
<a name="scanning_resources_lambda_code"></a>

**重要**  
 此功能會擷取 Lambda 函數的程式碼片段，以反白顯示偵測到的漏洞。這些程式碼片段可以顯示硬式編碼的登入資料和其他敏感資料。

 透過此功能，Amazon Inspector 會根據 AWS 安全最佳實務掃描 Lambda 函數中的應用程式程式碼，以偵測資料洩漏、注入缺陷、缺少加密和弱式密碼編譯。Amazon Inspector 使用自動化推理和機器學習來評估您的 Lambda 函數應用程式程式碼。它還使用與 Amazon Q 合作開發的內部偵測器來識別政策違規和漏洞。

 Amazon Inspector 會在偵測到 Lambda 函數應用程式[程式碼中的漏洞](https://docs.aws.amazon.com/inspector/latest/user/findings-types.html#findings-types-code)時產生程式碼漏洞。此調查結果類型包含程式碼片段，其中顯示問題，以及您可以在程式碼中找到問題的位置。它也建議如何修復問題。建議包含plug-and-play程式碼區塊，可用來取代易受攻擊的程式碼行。除了此調查結果類型的一般程式碼修復指引之外，還提供這些程式碼修正。

 程式碼修復建議由自動推理提供支援。有些程式碼修復建議可能無法如預期般運作。您要對您採用的程式碼修復建議負責。一律先檢閱程式碼修復建議，再採用這些建議。您可能需要編輯它們，以確保您的程式碼如預期般執行。如需詳細資訊，請參閱[負責任的 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.  使用您的登入資料登入，然後在 https：//[https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/). 開啟 Lambda 主控台。

1.  從導覽窗格中，選擇**函數**。

1.  選擇您要從 Amazon Inspector Lambda 程式碼掃描中排除的函數名稱。

1.  選擇 **Configuration** (組態)，然後選擇 **Tags** (標籤)。

1.  選擇**管理標籤**，然後選擇**新增標籤**。

   1. 在 **Key** (索引鍵) 欄位，輸入 `InspectorCodeExclusion`。

   1.  對於 **Value** (值)，輸入 `LambdaCodeScanning` 

1.  選擇 **Save** (儲存)。