Overview

用戶端應用程式可透過 Safe Browsing API,根據 Google 持續更新的不安全網頁資源清單,執行即時或清單式網址檢查。不安全的網頁資源包括社交工程網站 (例如網路釣魚和詐欺網站),以及託管惡意軟體或垃圾軟體的網站。如果網址出現在安全瀏覽清單中,就會被視為不安全。

如要判斷網址是否位於任何安全瀏覽名單中,用戶端可以使用 urls.searchhashes.search

新功能介紹

資料新鮮度

傳統上,安全瀏覽用戶端會定期下載威脅清單,用於比對潛在威脅。隨著威脅數量和速度不斷增加,這些本機威脅清單已無法有效防範現代威脅。

為縮小這項差距,我們推出通訊協定移轉功能,可將通訊協定設為「預設檢查」,而非 V4 中提供的「預設允許」通訊協定。為此,我們導入了下載可能良性網站清單的功能,也就是「全域快取」。如果全球快取中找不到網址,用戶端應使用 API 執行檢查,判斷該網址是否為威脅。

這項功能預設會執行檢查,加上服務的資料即時性有所提升,因此能更快偵測到新威脅,提供近乎即時的防護。

IP 隱私權

Safe Browsing API 只會將 IP 位址用於基本網路需求和防範 DoS 攻擊。

我們推出了 Safe Browsing Oblivious HTTP Gateway API 這項配套 API,進一步保障隱私權。這項功能會使用「無感 HTTP」向 Google 隱藏使用者的 IP 位址。這項技術的運作方式是讓非共謀的第三方處理加密版的使用者要求,然後轉送給 Google。因此第三方只能存取 IP 位址,Google 只能存取要求內容。第三方會運作 Oblivious HTTP 中繼服務 (例如 Fastly 的這項服務),Google 則會運作 Oblivious HTTP 閘道。這是選用的隨播 API。與 Google 安全瀏覽功能搭配使用時,系統不會再將使用者的 IP 位址傳送給 Google。

詳情請參閱「安全瀏覽 Oblivious HTTP Gateway API」說明文件。

搜尋方法

我們來看看有哪些方法可以即時檢查網址。

urls.search

可讓用戶端應用程式將網址傳送至安全瀏覽服務,檢查網址是否與任何威脅相關聯。

優點
  • 簡單的網址檢查:您傳送含有實際網址的要求,伺服器會傳回網址和相關聯的威脅 (如有)。
缺點
  • 網址機密性:要求包含要檢查的原始網址。

如果優點/缺點符合您的需求,請考慮使用 urls.search,因為這項功能簡單易用。

詳閱方法使用情形的《服務條款》,因為這與 hashes.search 不同。

hashes.search

可讓用戶端應用程式檢查一組網址中是否有已知威脅,但不會向服務揭露實際網址。只要提供網址的雜湊前置字串,回應會包含已知威脅的完整雜湊,以及分片雜湊前置字串。

優點
  • 網址機密性:要求中只會包含雜湊網址的 4 位元組雜湊前置字元。
  • 相容性:由於用戶端會處理網址正規化和雜湊處理,因此這個方法可與使用本機資料庫的模式 (例如即時模式和本機名單模式) 完美整合。
缺點
  • 複雜的網址檢查:您必須瞭解如何標準化網址、建立後置字串/前置字串運算式,以及計算 SHA256 雜湊,才能對這個方法提出要求,並與不安全清單或全域快取的本機副本進行比較。

如果您需要優先處理網址機密性,並有意使用即時模式本機清單模式,建議採用 hashes.search 方法。

HashList 方法

用戶端可透過這些方法下載並儲存不安全清單和全域快取的雜湊版本。用戶端可以根據這項資訊,判斷是否應即時搜尋有問題的網址。

這些方法是即時模式本機清單模式運作的必要條件。

如要進一步瞭解如何使用這些方法,請參閱「本機資料庫」頁面。

要求範例

本節提供一些範例,說明如何直接使用 HTTP API 存取 Safe Browsing。一般來說,建議使用產生的語言繫結,因為這會以便利的方式自動處理編碼和解碼。請參閱該繫結的說明文件。

使用 urls.search 的 HTTP 要求範例:

GET https://safebrowsing.googleapis.com/v5alpha1/urls:search?key=INSERT_YOUR_API_KEY_HERE&urls=testsafebrowsing.appspot.com/

使用 hashes.search 的 HTTP 要求範例:

GET https://safebrowsing.googleapis.com/v5/hashes:search?key=INSERT_YOUR_API_KEY_HERE&hashPrefixes=WwuJdQ

使用 hashLists.batchGet 的 HTTP 要求範例:

GET https://safebrowsing.googleapis.com/v5/hashLists:batchGet?key=INSERT_YOUR_API_KEY_HERE&names=se&names=mw-4b

所有回應主體都是以通訊協定緩衝區格式設定的酬載,您可以解碼。