濫用行為偵測

本頁內容適用於 ApigeeApigee Hybrid

查看 Apigee Edge 說明文件。

透過 Advanced API Security 的濫用行為偵測功能,您可以查看涉及 API 的安全事件。安全事件是指具有類似模式的一組事件,可能代表安全威脅。Advanced API Security 會使用機器學習模型偵測惡意活動的模式,包括 API 擷取和異常狀況,並根據類似模式將事件歸類。

Advanced API Security 偵測到安全事件時,會回報下列資訊:

  • 事件的風險等級和持續時間
  • 受事件影響的 Proxy
  • 事件的 IP 位址
  • 事件觸發的偵測規則
  • 事件的來源國家/地區

以及事件的其他相關資訊。

您可以透過 Apigee 使用者介面存取濫用行為偵測功能 (如下所述),也可以透過 Incidents API Security stats API 存取。

如要瞭解使用濫用行為偵測功能所需的角色和權限,請參閱 濫用行為偵測功能所需的角色和權限

如要使用這項功能,請啟用外掛程式。如果您是訂閱方案客戶,可以為機構啟用外掛程式。詳情請參閱「 管理訂閱機構的進階 API 安全性」。如果您是隨用隨付方案客戶,可以在符合資格的環境中啟用外掛程式。詳情請參閱「 管理進階 API 安全性外掛程式」。

啟用濫用偵測的機器學習模型

Apigee 希望您允許我們使用貴機構的資料訓練模型,協助我們改善貴機構的濫用行為偵測機器學習模型。使用您的資料訓練模型,有助於提高模型偵測安全事件的準確度。訓練只會套用至貴機構。我們不會將您的資料提供給任何其他 Google Cloud 客戶,用於訓練目的。

首次在 Apigee UI 中開啟「濫用行為偵測」頁面時,系統會顯示加入要求,允許 Advanced API Security 的機器學習模型使用您的 API 流量資料進行模型訓練。您必須明確選擇啟用模型,才能偵測濫用情形。請注意,如果選擇不加入模型訓練,您就不會看到進階異常偵測規則的任何偵測結果。如未選擇加入模型訓練,這項規則將無法運作。

如要瞭解管理機器學習啟用狀態所需的角色,請參閱濫用行為偵測功能所需的角色和權限

使用機器學習模型進行濫用偵測進階異常偵測

如要在濫用行為偵測中查看偵測到的異常狀況,您必須選擇允許進階異常偵測機器學習模型,根據 API 流量資料進行訓練。

模型只會使用您的資料進行訓練。我們絕不會將您的資料提供給其他 Google Cloud 客戶。

如要選擇使用 API 流量資料訓練異常偵測模型,請在將異常偵測功能新增至濫用偵測設定時,選取該選項。

開啟「濫用行為偵測」頁面

如要開啟「濫用行為偵測」頁面,請按照下列步驟操作:

Cloud 控制台中的 Apigee

在 Google Cloud 控制台中,前往「Advanced API Security」(進階 API 安全性) >「Abuse detection」(濫用行為偵測) 頁面。

前往「濫用行為偵測」

傳統版 Apigee

在傳統版 Apigee UI 中,依序選取「Analyze」>「API Security」>「Abuse detection」

系統會顯示「濫用行為偵測」主頁面:

濫用行為偵測主頁面。

變更權限,允許 Apigee 改善機器學習模型

您隨時可以變更權限,允許 Apigee 改善機器學習模型,方法是點選「濫用行為偵測」頁面右上方的「設定」,然後選取啟用或停用這項功能的選項。

「濫用行為偵測」主頁

在頁面頂端,你可以選取下列其中一個近期時間範圍,查看事件:過去 1 天1 週2 週

頁面中的表格會顯示所選時間間隔內,貴機構受安全性事件影響的環境。

表格的每一列也會顯示下列資訊:

  • 環境:發生濫用行為的環境。
  • 事件總數:所選時間範圍內,環境中的事件總數。如要進一步瞭解使用者介面中顯示的事件和資料,請參閱「事件和顯示資料的限制」。
  • 風險等級:顯示嚴重、中等和低三種風險等級的事件數量。風險等級是根據事件的不同特徵而定,例如偵測到的規則數量、規則類型,以及事件相對於正當流量的大小。風險等級可協助您判斷要優先調查哪些事件,專心處理最嚴重的問題。

    風險等級可以是下列任一項:

    • 嚴重:嚴重事件具有高風險。建議您優先調查這些問題。
    • 中等:中等事件具有一定風險,但低於嚴重風險事件,建議您優先處理這類事件,而非低風險事件。
    • :調查完高風險事件後,再調查低風險事件。

    各風險等級旁的數字表示該風險等級的事件數。

環境詳細資料

如要查看所選時間範圍內環境的事件,請選取上表中的環境。系統隨即會開啟「環境詳細資料」檢視畫面:

事件檢視畫面。

如果看到事件或偵測到的流量,並想建立安全性動作,封鎖或標記與事件或偵測到的流量相關的要求,請按一下頁面頂端的「建立安全性動作」。系統隨即會開啟「安全性動作」頁面。

「環境詳細資料」檢視畫面有兩個分頁:

  • 事件:顯示環境中的事件清單和相關資訊。
  • 偵測到的流量:顯示與事件相關的偵測濫用流量詳細資料。

事件

如上所示,「環境詳細資料」檢視畫面的「事件」分頁會顯示下列選項:

  • 環境:變更要查看事件的環境。
  • Proxy:您可以選取「全選」,顯示所有 Proxy 的事件,也可以選取一或多個 Proxy,只顯示所選 Proxy 的事件。
  • 包含已封存的事件:選取這個選項後,事件清單會顯示已封存的事件。封存的事件旁邊會顯示圖示: 封存圖示。

    如要從清單中隱藏已封存的事件,請取消選取「包含已封存的事件」。 如果顯示的事件太多,或您想隱藏已調查的事件,可以封存事件。

「事件」檢視畫面也會顯示下列資訊:

  • 事件名稱:系統產生的事件摘要名稱。
  • 風險等級:事件的風險等級。
  • 熱門偵測規則:事件觸發的熱門偵測規則清單。

  • 事件流量事件總數,也就是與事件相關的偵測規則標記的 API 呼叫。
  • 偵測到第一個事件:偵測到事件中第一個事件的日期和時間。
  • 上次偵測到事件的時間:系統上次偵測到事件的日期和時間。
  • 時間長度:事件從第一個到最後一個事件的時間長度。
  • UUID:事件的通用唯一識別碼。

事件詳細資料

如要查看事件詳細資料,請在表格中按一下事件名稱。系統會顯示「事件詳細資料」檢視畫面的「總覽」窗格:

您可以按一下頁面頂端的「建立安全性動作」,建立 安全性動作來回應事件。

「事件詳細資料」檢視畫面有兩個分頁:「總覽」和「屬性」。 如要瞭解「總覽」分頁,請參閱總覽;如要瞭解屬性,請參閱屬性

事件詳細資料檢視畫面

總覽

「總覽」窗格會顯示事件的基本資訊,包括:

  • 事件名稱:事件的名稱。
  • 風險等級:事件的風險等級。
  • 受影響的 Proxy:受事件影響的 Proxy 數量。按一下「查看 Proxy」,即可查看受影響的 Proxy。
  • 時間長度:事件從第一個到最後一個事件的時間長度。以及首次偵測到事件的日期和時間。
  • IP 位址 (計數):偵測到此事件的專屬 IP 位址數量。按一下「查看 IP 位址」,即可查看 IP 位址的詳細資訊。
  • 洞察:濫用行為偵測事件詳細資料可能包含使用 Google Cloud 生成式 AI 大型語言模型 (LLM) 建立的生成式 AI 洞察。 LLM 會彙整每個事件偵測到的流量,協助您進一步瞭解安全性事件、提供事件的額外背景資訊,以及相關文件連結,並建議後續步驟。按一下「喜歡」或「不喜歡」圖示,並視需要提供說明,藉此提供意見回饋。

    深入分析摘要和建議是根據過去 14 天的資料提供,即使事件發生時間超過 14 天也是如此。
    如果專案和使用者帳戶已設定為使用 Cloud AI Companion API,系統就會自動在濫用情形偵測中納入這些生成式 AI 洞察資料。請參閱「 在 Google Cloud 專案中啟用 Cloud AI Companion API」 和「在 Google Cloud 專案中授予 IAM 角色」。 使用者帳戶也需要額外權限才能查看洞察資料。請參閱「濫用行為偵測功能所需的角色和權限」。

    如要停用生成式 AI 深入分析資訊,請按照「停用服務」一文中的操作說明,為這個專案停用 Cloud AI Companion API
  • 事件:顯示事件中事件的時間序列圖表。在圖表中,每個時間點的對應 y 值,都是指該時間點前後短時間內發生的事件總數。如果將游標懸停在圖表中的某個點上,系統會在「值」下方顯示最近時間範圍內的事件數量。將游標向左或向右移動,觀察數值變化位置,即可查看時間範圍變更時的值。

    「事件」窗格也會顯示環境和事件的流量總數。

  • 偵測到的熱門規則:最多顯示五個偵測到的熱門規則群組, 包括下列資訊:
    • 主要規則:事件觸發的最重要偵測規則。
    • 主要規則 API 事件:主要規則標記的 API 事件數量。
    • 偵測到的規則總數:事件觸發的偵測規則數量。

    如要查看所有規則,請按一下資訊卡底部的「查看所有規則」

  • 偵測到的熱門國家/地區:地圖,顯示事件中事件的來源國家/地區。地圖下方會顯示最多五個國家/地區,以及這些國家/地區的流量占總流量的百分比。

    注意:如果無法判斷事件的來源國家/地區,地圖會顯示「未設定」

    如要查看所有國家/地區,請按一下資訊卡底部的「查看所有國家/地區」

  • IP 位址:依事件的來源 IP 位址查看事件詳細資料。選取「顯示所有 IP 位址」,即可查看清單中的所有 IP 位址。 注意:即使多起事件對應至同一個 IP 位址,「IP 位址」窗格也會顯示不重複的 IP 位址。

    「IP 位址」頁面會顯示下列資料欄:

    • IP 位址:事件的 IP 位址。如果沒有看到 IP 位址,請按一下「查看」。顯示 IP 位址後,按一下即可查看「詳細資料」,其中會顯示偵測到的規則、首次和最近一次偵測到的日期、流量,以及與該 IP 位址相關事件的屬性

      「詳細資料」分頁也包含相關的輸入存取記錄資訊。詳情請參閱「濫用行為偵測中的 Ingress 存取記錄」。

      您也可以查看事件的原始資料,包括時間戳記、要求路徑,以及事件報表基礎要求的 回應狀態碼。按一下 IP 位址後,選取「原始資料」分頁標籤,即可查看原始資料。顯示的原始資料最多為 1,000 列,且為樣本,不一定是最新資料。

      如要瞭解詳細資料欄位,請參閱 Analytics 維度參考資料安全性統計資料 API 維度
    • 位置:IP 位址的位置。
    • 偵測到的流量:來自 IP 位址的要求總數。
    • 通話百分比:來自 IP 位址的要求在環境中所有通話中所占的百分比。
    • 首次偵測到事件:事件中首次偵測到事件的時間。
    • 上次偵測到事件的時間:系統上次在事件中偵測到事件的時間。
  • 「API 金鑰」會依 API 金鑰列出事件。 選取「顯示所有 API 金鑰」,即可查看清單中的所有 API 金鑰。清單包含下列資料欄:

    • API 金鑰:事件的 API 金鑰。如果看不到金鑰,請按一下「查看」。顯示金鑰後,按一下即可查看偵測到的規則、首次和上次偵測日期、流量,以及使用 API 金鑰偵測到的事件屬性

      您也可以查看事件的原始資料,包括閘道流程 ID、時間戳記,以及事件報表基礎要求的路徑。按一下 API 金鑰後,選取「原始資料」分頁標籤,即可查看原始資料。顯示的原始資料最多為 1,000 列,且為樣本,不一定是最新資料。

      如要瞭解詳細資料欄位,請參閱 Analytics 維度參考資料安全性統計資料 API 維度
    • 應用程式:與 API 金鑰相關聯的開發人員應用程式或AppGroup應用程式。
    • 偵測到的流量:來自 API 金鑰的要求總數。
    • 通話百分比:環境中所有通話中,來自 API 金鑰的要求百分比。
    • 首次偵測到事件:事件中首次偵測到使用此 API 金鑰的要求。
    • 上次偵測到事件的時間:上次在事件中偵測到使用這個 API 金鑰的要求。

減少大量誤報

如果 Advanced API Security 的濫用行為偵測規則將大量誤判為異常的內部 IP 位址標示為異常,請按照本節的指引解決問題。

根據預設,Apigee 會使用 API 要求中 X-Forwarded-For (XFF) 標頭列出的第一個公開 IP 位址。不過,如果機構的內部 API 流量很大,XFF 標頭可能會包含列在公開 IP 前的私有 IP。(例如使用公開負載平衡器 IP 位址時)。在這種情況下,Apigee 的預設行為是忽略 XFF 標頭中的私人 IP,並將公開負載平衡器 IP 位址顯示為流量來源。這可能會導致 Apigee 將大量流量歸因於該公開 IP 位址,進而遭到 Advanced API Security 的濫用偵測功能標示為異常流量模式。

您可以為環境設定 用戶端 IP 位址解析,指明 Apigee 應使用的來源 IP 位址,藉此減輕這個問題的影響。使用用戶端 IP 位址解析,可引導 Apigee 回報 API 流量的真實來源 IP 位址。舉例來說,您可以指示 Apigee 一律使用 XFF 標頭中的第一個 IP 位址,即使是私人 IP 位址也一樣。

封存事件

為協助您區分已調查的事件和尚未調查的事件,您可以封存不再需要處理的事件。封存事件後,系統會將其從「環境詳細資料」>「事件」清單中隱藏 (前提是未選取「Include archived incidents」(包含已封存的事件))。封存事件不會刪除事件: 如果改變心意,隨時可以取消封存。

如要封存事件,請在「事件詳細資料」檢視畫面頂端選取「封存」。 完成後,「封存」按鈕標籤會變更為「取消封存」「取消封存」按鈕。

取消封存事件

如要取消封存封存的事件,請按照下列步驟操作:

  1. 在「Environment details」>「Incidents」檢視畫面中,按一下要取消封存事件旁邊的圖示: 封存圖示。
  2. 按一下事件清單頂端的「取消封存」

或者,如果您位於事件的「事件詳細資料」檢視畫面,請按一下「取消封存」

偵測到車流

偵測到的流量是指觸發濫用偵測規則的流量。「偵測到的流量」檢視畫面會顯示事件相關資訊,這些事件是偵測到的流量的特定例項。這個頁面會顯示過去 14 天內「偵測到最後一個事件」的事件。如要進一步瞭解 UI 中顯示的資料時間範圍,請參閱「事件和顯示資料的限制」。

如要開啟「偵測到的流量」檢視畫面,請在「環境詳細資料」檢視畫面中選取「偵測到的流量」

濫用檢視畫面。

「偵測到的流量」檢視畫面會顯示下列資料:

  • 總流量:要求總數。
  • 偵測到的流量:來自偵測到濫用行為的 IP 位址要求數量。
  • 偵測到的流量百分比:偵測到的流量在總流量中所占的百分比。
  • 偵測到的 IP 位址數量:與偵測到的濫用行為相應的不同 IP 位址數量。來自相同 IP 位址的多個要求只會計為一次。

「偵測到的流量」檢視畫面也會顯示表格,列出與偵測到的濫用行為相應的每個 IP 位址詳細資料。請注意,基於隱私權考量,系統預設不會顯示 IP 位址。如要查看所有 IP 位址,請選取表格頂端的「顯示所有 IP 位址」

IP 位址表格的每一列都會顯示:

  • IP 位址:偵測到濫用行為的 IP 位址。按一下「查看」即可查看地址。 IP 位址顯示後,按一下即可查看詳細資料,包括偵測到的規則、首次和最近一次偵測到的日期,以及來自該 IP 位址的偵測流量屬性

    「詳細資料」分頁也包含相關的「輸入存取記錄」資訊。詳情請參閱「濫用行為偵測中的 Ingress 存取記錄」。

    您也可以查看事件的原始資料,包括時間戳記、要求路徑,以及事件報表基礎要求的 回應狀態碼。按一下 IP 位址後,選取「原始資料」分頁標籤,即可查看原始資料。顯示的原始資料最多為 1,000 列,且為樣本,不一定是最新資料。

    如要瞭解詳細資料欄位,請參閱 Analytics 維度參考資料安全性統計資料 API 維度
  • 位置:IP 位址的位置。
  • 熱門應用程式金鑰:IP 位址要求中最常使用的應用程式金鑰。注意: 應用程式金鑰是 API 金鑰的別稱。
  • 偵測規則:因濫用行為而觸發的偵測規則清單。
  • 熱門網址:從 IP 位址收到最多要求的網址。
  • 偵測到的流量:來自 IP 位址的要求數量。
  • 偵測到的流量百分比:來自 IP 位址的請求在環境中所有請求所占的百分比。
  • 偵測到的第一個事件:在「安全分數」頁面頂端選取的時間範圍內,系統首次在來自 IP 位址的要求中偵測到事件。
  • 上次偵測到事件:上次在來自 IP 位址的要求中偵測到事件的時間,時間範圍為「安全性評分」頁面頂端選取的範圍。

屬性

「屬性」檢視畫面可讓您深入瞭解事件或偵測到的流量詳細資料。屬性 (也稱為維度) 是資料分組,可讓您以不同方式查看事件。舉例來說,API 產品屬性可讓您依 API 產品查看資料。

如要查看事件的「屬性」,請選取「事件詳細資料」檢視畫面頂端的「屬性」分頁標籤。

如要查看事件或偵測到的流量中特定 API 位址或 API 金鑰的「屬性」,請按一下該總覽頁面結果表格中的 IP 位址或 API 金鑰。

選取 API 產品的「屬性」窗格。

左窗格會顯示所有屬性,以及每個屬性的相異值數量。您可以選取屬性,查看事件詳細資料。

上圖顯示「屬性」檢視畫面,並已選取「國家/地區」。 「國家/地區」窗格會顯示每個區域的 API 呼叫百分比圖表。

如果看到任何值為 (not set),請參閱「屬性值為 (not set) 代表什麼意思」。

您可以使用「篩選器」欄位,依各種屬性篩選窗格中顯示的屬性資料。

一般來說,屬性的窗格會顯示表格,依屬性值顯示事件資料。該表格含有以下各欄:

  • 發出的呼叫總數:API 呼叫總數。
  • 通話次數百分比:每個屬性值的通話次數占所有通話次數的百分比。
  • 上次偵測時間:上次偵測到與事件相關的事件。

部分屬性的表格會顯示額外資料欄。

如要瞭解各項屬性,包括:

  • API 產品: 依 API 產品查看詳細資料。
  • 國家/地區:查看事件發生所在國家/地區的詳細資料。
  • AppGroup 應用程式:依相關 AppGroup 應用程式查看詳細資料。如果要求未與任何 AppGroup 建立關聯,「AppGroup 應用程式」和「AppGroup 名稱」欄會顯示 (not set)。請改為參閱開發人員應用程式資訊。
  • AppGroups:依相關的 AppGroups 名稱查看詳細資料。如果要求未與 AppGroup 建立關聯,「AppGroup 名稱」和「AppGroup 應用程式」欄會顯示 (not set)。請改為查看開發人員資訊。
  • 開發人員:查看開發人員(即應用程式開發者) 的詳細資料。「開發人員」包含標示為「應用程式」的資料欄,列出各開發人員的應用程式。如果應用程式屬於 AppGroup,「開發人員」欄會顯示 (not set),「應用程式」欄則會顯示 AppGroup 應用程式。詳情請參閱「AppGroups names」(AppGroups 名稱) 分頁。
  • 開發人員應用程式:依應用程式查看詳細資料。「開發人員電子郵件」欄會列出每個應用程式開發人員的電子郵件地址。如果應用程式屬於 AppGroup,「開發人員」欄會顯示 (not set),「應用程式」欄則會顯示 AppGroup 應用程式。詳情請參閱「AppGroups 應用程式」分頁。
  • Proxy:依Proxy 查看詳細資料。
  • 回應代碼:依回應代碼查看詳細資料。
  • 規則:依偵測規則查看詳細資料。
  • 使用者代理程式:查看使用者代理程式的詳細資料,也就是發出 API 呼叫的軟體代理程式。

屬性值為 (not set) 代表什麼意思?

有時屬性的值為 (not set)。發生這個狀況的原因很多,舉例來說,Apigee 可能沒有足夠的資訊來判斷屬性的值,例如 API 呼叫的來源國家/地區。或者,該屬性可能不適用於特定情況。詳情請參閱「 數據分析實體值『(not set)』代表什麼意義?」。

濫用行為偵測中的 Ingress 存取記錄

如果您已為 Apigee 傳入存取記錄啟用 Cloud Logging,IP 位址或 API 金鑰的詳細資料頁面會提供直接連往 Cloud Logging 的連結,並為目前選取的 IP 位址設定篩選器。

如需使用資訊,請參閱「 使用記錄檔探索工具查看記錄檔」。建議的篩選器:

  • 如要查看所有異常類型,請查看所有通話。
  • 如要只查看錯誤,請將結果範圍限制在「錯誤」嚴重性。
如果 Apigee 傳入存取記錄未啟用 Cloud Logging,這個欄位會提供 Cloud Logging 的詳細資訊連結。

請參閱「記錄 Apigee 存取記錄」,瞭解使用 Cloud Logging 傳入存取記錄時的相關資訊和重要定價影響。

濫用偵測的限制

濫用行為偵測功能有下列限制。

  • 如果事件的「上次偵測到事件」超過 14 天,就不會顯示在濫用偵測使用者介面中。如要進一步瞭解使用者介面中顯示的事件和資料,請參閱「事件和顯示資料的限制」。
  • 首次為機構啟用或重新啟用 Advanced API 時,系統會將事件分組為事件,因此會有延遲。之後就會定期延遲。
  • 如果機構的流量很大,事件詳細資料屬性頁面可能需要一段時間才能載入。
  • Apigee Hybrid 目前不支援 AppGroup。