

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

# 在 Web 應用程式中嵌入 Honeypot 連結 （選用）
<a name="embed-the-honeypot-link-in-your-web-application-optional"></a>

如果您在步驟 `yes` 1 中選擇**啟用無效的機器人保護**參數。 [啟動堆疊](step-1.-launch-the-stack.md)，CloudFormation 範本會建立低互動生產 Honeypot 的陷阱端點。此陷阱旨在偵測和轉移來自內容湊集器和不良機器人的傳入請求。有效使用者不會嘗試存取此端點。

除了 Honeypot 機制之外，此元件還可監控 Application Load Balancer (ALB) 或 Amazon CloudFront 的直接連線，藉此增強錯誤的機器人偵測能力。如果機器人繞過 Honeypot 並嘗試與 ALB 或 CloudFront 互動，系統會分析請求模式和日誌，以識別惡意活動。偵測到錯誤的機器人時，會擷取其 IP 地址並新增至 AWS WAF 封鎖清單，以防止進一步存取。錯誤的機器人偵測會透過結構化邏輯鏈運作，以確保全面的威脅涵蓋範圍：
+ HTTP 洪水防護 Lambda 日誌剖析器 – 在洪水分析期間從日誌項目收集錯誤的機器人 IPs。
+ 掃描器和探查保護 Lambda 日誌剖析器 – 從掃描器相關日誌項目識別錯誤的機器人 IPs。
+ HTTP 洪水防護 Athena 日誌剖析器 – 使用跨查詢執行的分割區，從 Athena 日誌擷取錯誤的機器人 IPs。
+ 掃描器和探查保護 Athena 日誌剖析器 – 使用相同的分割策略，從掃描器相關的 Athena 日誌擷取錯誤的機器人 IPs。
+ 備用偵測 – 如果同時停用 HTTP 洪水防護和掃描器與探查防護，系統會依賴 Log Lambda 剖析器，該剖析器會根據 [WAF 標籤篩選條件](https://docs.aws.amazon.com/waf/latest/developerguide/waf-labels.html)記錄機器人活動。

使用下列其中一個程序，為來自 CloudFront 分發的請求嵌入 Honeypot 連結。

## 為 Honeypot 端點建立 CloudFront 原始伺服器
<a name="create-a-cloudfront-origin-for-the-honeypot-endpoint"></a>

針對使用 CloudFront 分佈部署的 Web 應用程式，請使用此程序。使用 CloudFront，您可以包含 `robots.txt` 檔案，以協助識別忽略機器人排除標準的內容抓取器和機器人。請完成下列步驟，以嵌入隱藏的連結，然後明確地在您的 `robots.txt` 檔案中不允許該連結。

1. 登入 [AWS CloudFormation 主控台](https://console.aws.amazon.com/cloudformation/)。

1. 選擇您在[步驟 1 中建置的堆疊。啟動堆疊](step-1.-launch-the-stack.md) 

1. 選擇 **Output (輸出)** 索引標籤。

1. 從 **BadBotHoneypotEndpoint** 金鑰複製端點 URL。
   + 行為路徑 (`/ProdStage`)

1. 在指向 Honeypot 的內容中嵌入此端點連結。從您的人類使用者隱藏此連結。舉例來說，請檢閱下列程式碼範例：`<a href="/behavior_path" rel="nofollow" style="display: none" aria-hidden="true">honeypot link</a>`。

1. 修改網站根目錄中`robots.txt`的檔案，以明確禁止 Honeypot 連結，如下所示：

```
User-agent: <*>
        Disallow: /<behavior_path>
```

**重要**  
CloudFront 中不需要任何路徑註冊，因為請求為：被 WAF **BadBotRuleFilter** 封鎖。自動在日誌中收集的解決方案。由**日誌剖析器** lambda 處理。這種簡化的方法直接使用 WAF 日誌，而不是需要額外的端點組態，透過日誌分析讓錯誤的機器人偵測程序更有效率

**注意**  
您有責任驗證哪些標籤值適用於您的網站環境。`rel="nofollow"` 如果您的環境未觀察到，請勿使用 。如需機器人中繼標籤組態的詳細資訊，請參閱 [Google 開發人員指南](https://developers.google.com/search/reference/robots_meta_tag)。修改網站根目錄中`robots.txt`的檔案，以明確禁止 Honeypot 連結，如下所示：

## 將 Honeypot 端點內嵌為外部連結
<a name="embed-the-honeypot-endpoint-as-an-external-link"></a>

**注意**  
這些規則使用來自 Web 請求原始伺服器的來源 IP 地址。如果您有流經一或多個代理或負載平衡器的流量，Web 請求原始伺服器將包含最後一個代理的地址，而不是用戶端的原始地址。

針對 Web 應用程式使用此程序。

1. 登入 [AWS CloudFormation 主控台](https://console.aws.amazon.com/cloudformation/)。

1. 選擇您在[步驟 1 中建置的堆疊。啟動堆疊](step-1.-launch-the-stack.md)。

1. 選擇 **Output (輸出)** 索引標籤。

1. 從 **BadBotHoneypotEndpoint** 金鑰複製端點 URL。

   ```
   <a href="<BadBotHoneypotEndpoint value>" rel="nofollow" style="display: none" aria-hidden="true"><honeypot link></a>
   ```
**注意**  
此程序使用 `rel=nofollow`指示機器人不要存取 Honeypot URL。不過，由於連結是在外部內嵌，因此您無法包含明確不允許連結`robots.txt`的檔案。您有責任驗證哪些標籤可在您的網站環境中運作。`rel="nofollow"` 如果您的環境未觀察到，請勿使用 。