Overview

Safe Browsing API memungkinkan aplikasi klien Anda melakukan pemeriksaan URL berbasis daftar atau real-time terhadap daftar resource web tidak aman Google yang terus diperbarui. Contoh resource web yang tidak aman adalah situs manipulasi psikologis (situs phishing dan penipuan) serta situs yang menghosting malware atau software yang tidak diinginkan. Setiap URL yang ditemukan dalam daftar Safe Browsing dianggap tidak aman.

Untuk menentukan apakah suatu URL ada di salah satu daftar Safe Browsing, klien dapat menggunakan urls.search atau hashes.search.

Apa yang Baru?

Keaktualan Data

Secara tradisional, klien Safe Browsing mendownload daftar ancaman secara berkala yang digunakan untuk mencocokkan dengan potensi ancaman. Seiring waktu, volume dan kecepatan ancaman telah meningkat, sehingga daftar ancaman lokal ini menjadi kurang efektif terhadap ancaman modern.

Untuk menutup kesenjangan ini, kami memperkenalkan kemampuan untuk mengubah protokol menjadi periksa secara default, bukan protokol izinkan secara default yang sebelumnya tersedia di V4. Hal ini dilakukan dengan memperkenalkan kemampuan untuk mendownload daftar situs yang kemungkinan tidak berbahaya yang disebut sebagai "Cache Global". Jika URL tidak ditemukan di Cache Global, klien harus melakukan pemeriksaan dengan API untuk menentukan apakah URL tersebut merupakan ancaman.

Kemampuan untuk melakukan pemeriksaan secara default selain peningkatan keaktualan data dalam layanan akan memberikan perlindungan yang lebih cepat dan mendekati real-time terhadap ancaman baru.

Privasi IP

Safe Browsing API hanya menggunakan alamat IP untuk kebutuhan jaringan penting dan untuk tujuan anti-DoS.

Kami memperkenalkan API pendamping yang dikenal sebagai Safe Browsing Oblivious HTTP Gateway API untuk mengaktifkan jaminan privasi tambahan. Fitur ini menggunakan HTTP yang Tidak Diketahui untuk menyembunyikan alamat IP pengguna akhir dari Google. Cara kerjanya adalah dengan meminta pihak ketiga yang tidak berkolusi untuk menangani versi terenkripsi dari permintaan pengguna, lalu meneruskannya ke Google. Jadi, pihak ketiga hanya memiliki akses ke alamat IP, dan Google hanya memiliki akses ke konten permintaan. Pihak ketiga mengoperasikan Oblivious HTTP Relay (seperti layanan ini dari Fastly), dan Google mengoperasikan Oblivious HTTP Gateway. Ini adalah API pengiring opsional. Saat digunakan bersama dengan Google Safe Browsing, alamat IP pengguna akhir tidak lagi dikirim ke Google.

Lihat dokumentasi Safe Browsing Oblivious HTTP Gateway API untuk mengetahui detail tambahan.

Metode Penelusuran

Mari kita bahas berbagai metode yang tersedia untuk melakukan pemeriksaan URL secara real-time.

urls.search

Memungkinkan aplikasi klien mengirim URL ke layanan Safe Browsing untuk memeriksa apakah ada ancaman yang terkait dengan URL tersebut.

Kelebihan
  • Pemeriksaan URL sederhana: Anda mengirim permintaan dengan URL sebenarnya, dan server merespons dengan URL beserta ancaman terkaitnya (jika ada).
Kekurangan
  • Tidak Ada Kerahasiaan URL: Permintaan berisi URL mentah yang sedang diperiksa.

Jika kelebihan/kekurangannya sesuai dengan kebutuhan Anda, pertimbangkan untuk menggunakan urls.search karena mudah digunakan.

Tinjau Persyaratan Layanan penggunaan metode karena berbeda dengan hashes.search.

hashes.search

Memungkinkan aplikasi klien memeriksa apakah ada ancaman yang diketahui dalam sekumpulan URL tanpa mengungkapkan URL sebenarnya ke layanan. Hal ini dilakukan dengan hanya memberikan awalan hash URL. Respons akan berisi hash lengkap dari ancaman yang diketahui dengan awalan hash shard.

Kelebihan
  • Kerahasiaan URL: Hanya awalan hash 4 byte dari URL yang di-hash yang ada dalam permintaan.
  • Kompatibilitas: Karena klien menangani kanonisasi dan hashing URL, metode ini terintegrasi dengan lancar dengan mode yang menggunakan database lokal, seperti Mode Real-Time dan Mode Daftar Lokal.
Kekurangan
  • Pemeriksaan URL kompleks: Anda harus mengetahui cara membuat URL kanonis, membuat ekspresi akhiran/awalan, dan menghitung hash SHA256 untuk membuat permintaan ke metode ini, perbandingan dengan salinan lokal daftar tidak aman atau Cache Global.

Jika Anda perlu memprioritaskan kerahasiaan URL dan tertarik menggunakan Mode Real-Time atau Mode Daftar Lokal, maka hashes.search adalah pendekatan yang direkomendasikan.

Metode HashList

Metode ini memungkinkan klien mendownload dan menyimpan versi yang di-hash dari daftar tidak aman dan Cache Global. Klien dapat menggunakan informasi ini untuk menentukan apakah mereka harus melakukan penelusuran real-time URL yang dimaksud atau tidak.

Metode ini penting untuk pengoperasian Mode Real-Time dan Mode Daftar Lokal.

Untuk informasi tambahan tentang cara menggunakan metode ini, lihat halaman Database Lokal.

Contoh Permintaan

Bagian ini mendokumentasikan beberapa contoh penggunaan HTTP API secara langsung untuk mengakses Safe Browsing. Sebaiknya gunakan binding bahasa yang dibuat karena akan otomatis menangani encoding dan decoding dengan cara yang mudah. Lihat dokumentasi untuk binding tersebut.

Contoh permintaan HTTP menggunakan urls.search:

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

Contoh permintaan HTTP menggunakan hashes.search:

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

Contoh permintaan HTTP menggunakan hashLists.batchGet:

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

Semua isi respons adalah payload berformat protocol buffer yang dapat Anda dekode.