Menggunakan Submission API
Dokumen ini menjelaskan cara mengirimkan URL yang Anda duga tidak aman ke Safe Browsing untuk dianalisis, dan memeriksa hasil pengiriman ini secara asinkron. URL yang dikonfirmasi melanggar Kebijakan Safe Browsing akan ditambahkan ke layanan Safe Browsing.
Sebelum memulai
Hubungi bagian penjualan atau customer engineer Anda untuk mendapatkan akses ke fitur ini.
Praktik terbaik
Baca Kebijakan Safe Browsing
Web Risk Submission API memvalidasi bahwa URL yang dikirim menampilkan konten yang melanggar kebijakan Safe Browsing. Developer API harus memastikan bahwa URL yang dikirimkan memiliki bukti yang jelas tentang pelanggaran kebijakan ini. Contoh berikut menunjukkan bukti pelanggaran kebijakan:
- Konten manipulasi psikologis yang meniru merek online yang sah (nama merek, logo, tampilan dan nuansa), pemberitahuan sistem, menggunakan URL yang menipu, atau meminta pengguna memasukkan kredensial sensitif seperti nama pengguna atau sandi.
- Situs yang menghosting file yang dapat dieksekusi malware yang diketahui.
Jangan kirimkan jenis URL berikut karena kemungkinan tidak akan ditambahkan ke daftar blokir Safe Browsing:
- Survei palsu, situs belanja, atau scam lainnya yang tidak menunjukkan phishing (seperti scam mata uang kripto).
- Spam yang berisi perjudian, kekerasan, atau konten dewasa yang bukan phishing atau malware.
Meningkatkan deteksi
Sebaiknya gunakan kolom ThreatInfo dan ThreatDiscovery untuk memberikan informasi tambahan tentang pengiriman. Tindakan ini dapat membantu meningkatkan deteksi. Untuk mengetahui informasi selengkapnya, lihat Praktik terbaik untuk menggunakan Submission API.
Penargetan taksonomi dan merek
Anda dapat memberikan laporan penyalahgunaan yang lebih akurat dan mendetail dengan menggunakan komponen opsional berikut dalam objek ThreatInfo: abuseSubtype dan targetedBrand. Kolom ini membantu Web Risk menganalisis entitas yang ditargetkan dengan lebih akurat dan meningkatkan model deteksi.
abuseSubtype
Kolom abuseSubtype memberikan klasifikasi ancaman yang terperinci. Pastikan kolom ini ditetapkan hanya jika abuseType utama adalah SOCIAL_ENGINEERING; jika tidak, error akan ditampilkan.
Nilai abuseSubtype yang didukung mencakup berikut ini:
BANK_PHISHING: Phishing yang menyamar sebagai bank atau entitas keuangan tepercaya.CRYPTO_EXCHANGE_PHISHING: Phishing yang menyamar sebagai platform perdagangan mata uang kripto.SOCIAL_MEDIA_PLATFORM_PHISHING: Phishing yang menyamar sebagai platform media sosial.RETAIL_PHISHING: Phishing yang menyamar sebagai platform retail yang sudah mapan.EMAIL_PROVIDER_PHISHING: Phishing yang menyamar sebagai layanan email.ENTERTAINMENT_PHISHING: Phishing yang menyamar sebagai layanan hiburan.GOVERNMENT_AGENCY_PHISHING: Phishing yang menyamar sebagai lembaga pemerintah untuk mendapatkan informasi identitas pribadi (PII), seperti nomor Jaminan Sosial atau nomor identifikasi wajib pajak.PACKAGE_TRACKING_SCAM: Meniru layanan pengiriman untuk mendapatkan PII atau detail pembayaran.FAKE_SUPPORT_SCAM: Situs penipu yang mengklaim masalah perangkat palsu untuk menipu pengguna agar membagikan PII atau menghubungi penipu.GOVERNMENT_FINE_SCAM: Konten penipuan yang mengklaim bahwa denda pelanggaran hukum harus dibayar.FAKE_PRIZE_SCAM: Halaman penipuan yang menawarkan reward atau hadiah yang tidak realistis.OTHER_PHISHING/OTHER_SCAM: Serangan rekayasa sosial yang tidak termasuk dalam kategori lain yang disebutkan di sini.
targetedBrand
Objek targetedBrand mengidentifikasi entitas yang menjadi target kampanye phishing dan manipulasi psikologis.
brandName: Nama merek atau perusahaan yang ditiru identitasnya yang mudah dikenali (misalnya,Altostrat).domain: Domain sah merek yang identitasnya dipalsukan (misalnya,altostrat.com).
Catatan penting untuk peserta pratinjau
- Konsistensi dalam taksonomi: Phishing tetap dikategorikan dalam jenis ancaman
SOCIAL_ENGINEERING(bukan jenis indukPHISHINGterpisah) untuk memastikan konsistensi di seluruh rangkaian Web Risk dan Safe Browsing API. - Kategori yang dikecualikan: Subkategori untuk
MALWAREdanUNWANTED_SOFTWAREdikecualikan dari rilis ini. - Menangani ancaman yang tidak tercantum: Jika kiriman Anda tidak sesuai dengan subtipe tertentu, gunakan
OTHER_PHISHINGatauOTHER_SCAM. Sebaiknya gunakan kolomcommentsdiThreatJustificationuntuk mendeskripsikan serangan. - Opsional, tetapi disarankan: Mengisi kolom ini membantu Web Risk memprioritaskan dan meningkatkan kualitas model kecerdasan ancaman terkait.
- Fase pratinjau: Nilai dan perilaku enum untuk fitur ini dapat berubah.
Mengirimkan URL
Untuk mengirimkan URL, kirim permintaan HTTP POST ke metode
projects.uris.submit.
- Submission API mendukung satu URL per permintaan. Untuk memeriksa beberapa URL, Anda harus mengirim permintaan terpisah untuk setiap URL.
URL harus valid, tetapi tidak perlu dikanonisasi. Untuk mengetahui informasi selengkapnya, lihat RFC 2396.
Respons HTTP
POSTmenampilkanlong-running operation. Untuk mengetahui informasi selengkapnya tentang cara mengambil hasil pengiriman dan memeriksa status pengiriman, lihat Operasi yang berjalan lama.
Contoh
Metode HTTP dan URL:
POST https://webrisk.googleapis.com/v1/projects/project-id/uris:submit
Meminta isi JSON:
{
"submission": {
"uri": "https://www.example.com/login.html"
}
}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://webrisk.googleapis.com/v1/projects/project-id/uris:submit"
PowerShell
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://webrisk.googleapis.com/v1/projects/project-id/uris:submit" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{
"name": "projects/project-number/operations/operation-id",
}
Memeriksa status pengajuan
Gunakan project-number dan operation-id dari respons untuk memeriksa status pengiriman. Status berada di kolom metadata.state operasi yang ditampilkan.
Status yang mungkin mencakup RUNNING, SUCCEEDED, dan CLOSED. Untuk mengetahui informasi selengkapnya tentang status ini, lihat Memahami Status Operasi dalam panduan Operasi yang Berjalan Lama.