Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kontrol identifikasi klien untuk mengelola bot
Jika lalu lintas terkait serangan tidak dapat dengan mudah dikenali melalui atribut statis, maka deteksi harus dapat secara akurat mengidentifikasi klien yang membuat permintaan. Misalnya, aturan berbasis tarif seringkali lebih efektif dan lebih sulit untuk dihindari ketika atribut yang dibatasi tarif khusus aplikasi, seperti cookie atau token. Menggunakan cookie yang terkait dengan sesi mencegah operator botnet untuk dapat menduplikasi aliran permintaan serupa di banyak bot.
Akuisisi token biasanya digunakan untuk identifikasi klien. Untuk akuisisi token, JavaScript kode mengumpulkan informasi untuk menghasilkan token yang dievaluasi di sisi server. Evaluasi dapat berkisar dari memverifikasi JavaScript yang berjalan pada klien hingga mengumpulkan informasi perangkat untuk sidik jari. Akuisisi token memerlukan integrasi JavaScript SDK ke dalam situs atau aplikasi, atau mengharuskan penyedia layanan melakukan injeksi secara dinamis.
Memerlukan JavaScript dukungan menambahkan rintangan tambahan untuk bot yang mencoba meniru browser. Ketika SDK terlibat, seperti dalam aplikasi seluler, akuisisi token memverifikasi implementasi SDK dan mencegah bot meniru permintaan aplikasi.
Akuisisi token memerlukan penggunaan SDK yang diimplementasikan di sisi klien koneksi. AWS WAF Fitur berikut menyediakan SDK JavaScript berbasis untuk browser dan SDK berbasis aplikasi untuk perangkat seluler: Kontrol Bot, Pencegahan pengambilalihan akun Kontrol Penipuan (ATP) dan Pencegahan Penipuan Pembuatan Akun Kontrol Penipuan (ACFP).
Teknik untuk identifikasi klien termasuk CAPTCHA, profil browser, sidik jari perangkat, dan sidik jari TLS.
CAPTCHA
Tes Turing publik yang sepenuhnya otomatis untuk membedakan komputer dan manusia (CAPTCHA) digunakan untuk membedakan antara pengunjung robot dan manusia dan untuk mencegah pengikisan web, isian kredensyal, dan spam. Ada berbagai implementasi, tetapi mereka sering melibatkan teka-teki yang dapat dipecahkan manusia. CAPTCHA menawarkan lapisan pertahanan tambahan terhadap bot umum dan dapat mengurangi positif palsu dalam deteksi bot.
AWS WAF memungkinkan aturan untuk menjalankan tindakan CAPTCHA terhadap permintaan web yang sesuai dengan kriteria inspeksi aturan. Tindakan ini adalah hasil evaluasi informasi identifikasi klien yang dikumpulkan oleh layanan. AWS WAF aturan dapat mengharuskan tantangan CAPTCHA diselesaikan untuk sumber daya tertentu yang sering ditargetkan oleh bot, seperti login, pencarian, dan pengiriman formulir. AWS WAF dapat langsung melayani CAPTCHA melalui sarana pengantara atau dengan menggunakan SDK untuk menanganinya di sisi klien. Untuk informasi lebih lanjut, lihat CAPTCHA dan Tantangan di. AWS WAF
Profil peramban
Profil browser adalah metode mengumpulkan dan mengevaluasi karakteristik browser, sebagai bagian dari akuisisi token, untuk membedakan manusia nyata menggunakan browser interaktif dari aktivitas bot terdistribusi. Anda dapat melakukan pembuatan profil browser secara pasif melalui header, urutan header, dan karakteristik permintaan lainnya yang melekat pada cara kerja browser.
Anda juga dapat melakukan pembuatan profil browser dalam kode dengan menggunakan akuisisi token. Dengan menggunakan JavaScript untuk profil browser, Anda dapat dengan cepat menentukan apakah klien mendukung JavaScript. Ini membantu Anda mendeteksi bot sederhana yang tidak mendukungnya. Profil browser memeriksa lebih dari sekadar header dan JavaScript dukungan HTTP; pembuatan profil browser menyulitkan bot untuk sepenuhnya meniru browser web. Kedua opsi profil browser memiliki tujuan yang sama: untuk menemukan pola dalam profil browser yang menunjukkan ketidakkonsistenan dengan perilaku browser nyata.
AWS WAF kontrol bot untuk bot yang ditargetkan memberikan indikasi, sebagai bagian dari evaluasi token, apakah browser menunjukkan bukti otomatisasi atau sinyal yang tidak konsisten. AWS WAF menandai permintaan untuk mengambil tindakan yang ditentukan dalam aturan. Untuk informasi selengkapnya, lihat Mendeteksi dan memblokir lalu lintas bot tingkat lanjut
Sidik jari perangkat
Sidik jari perangkat mirip dengan profil browser, tetapi tidak terbatas pada browser. Kode yang berjalan pada perangkat (yang dapat berupa perangkat seluler atau browser web) mengumpulkan dan melaporkan detail perangkat ke server backend. Rinciannya dapat mencakup atribut sistem, seperti memori, tipe CPU, jenis kernel sistem operasi (OS), versi OS, dan virtualisasi.
Anda dapat menggunakan sidik jari perangkat untuk mengenali apakah bot meniru lingkungan atau jika ada tanda-tanda langsung bahwa otomatisasi sedang digunakan. Selain itu, sidik jari perangkat juga dapat digunakan untuk mengenali permintaan berulang dari perangkat yang sama.
Mengenali permintaan berulang dari perangkat yang sama, bahkan jika perangkat mencoba mengubah beberapa karakteristik permintaan, memungkinkan sistem backend untuk memberlakukan aturan pembatasan laju. Aturan pembatasan tarif yang didasarkan pada sidik jari perangkat biasanya lebih efektif daripada aturan pembatas kecepatan berdasarkan alamat IP. Ini membantu Anda mengurangi lalu lintas bot yang berputar antara VPN atau proxy tetapi bersumber dari sejumlah kecil perangkat.
Saat digunakan dengan SDK integrasi aplikasi, kontrol AWS WAF bot untuk bot yang ditargetkan, dapat menggabungkan perilaku permintaan sesi klien. Ini membantu Anda mendeteksi dan memisahkan sesi klien yang sah dari sesi klien jahat, bahkan ketika keduanya berasal dari alamat IP yang sama. Untuk informasi selengkapnya tentang kontrol AWS WAF bot untuk bot yang ditargetkan, lihat Mendeteksi dan memblokir lalu lintas bot tingkat lanjut
Sidik jari TLS
Sidik jari TLS, juga dikenal sebagai aturan berbasis tanda tangan, biasanya digunakan ketika bot berasal dari banyak alamat IP tetapi menunjukkan karakteristik yang serupa. Saat menggunakan HTTPS, sisi klien dan server bertukar pesan untuk mengakui dan memverifikasi satu sama lain. Mereka membangun algoritma kriptografi dan kunci sesi. Ini disebut jabat tangan TLS. Bagaimana jabat tangan TLS diimplementasikan adalah tanda tangan yang seringkali berharga untuk mengenali serangan besar yang tersebar di banyak alamat IP.
Sidik jari TLS memungkinkan server web untuk menentukan identitas klien web dengan tingkat akurasi yang tinggi. Ini hanya membutuhkan parameter dalam koneksi paket pertama, sebelum pertukaran data aplikasi terjadi. Dalam hal ini, klien web mengacu pada aplikasi yang memulai permintaan, yang mungkin berupa browser, alat CLI, skrip (bot), aplikasi asli, atau klien lainnya.
Salah satu pendekatan sidik jari SSL dan TLS adalah sidik jari JA3.
Amazon CloudFront mendukung penambahan header JA3 ke permintaan. CloudFront-Viewer-JA3-Fingerprint
Header berisi sidik jari hash 32 karakter dari paket TLS Client Hello dari permintaan penampil yang masuk. Sidik jari merangkum informasi tentang bagaimana klien berkomunikasi. Informasi ini dapat digunakan untuk profil klien yang memiliki pola yang sama. Anda dapat menambahkan CloudFront-Viewer-JA3-Fingerprint
header ke kebijakan permintaan asal dan melampirkan kebijakan ke CloudFront distribusi. Anda kemudian dapat memeriksa nilai header di aplikasi asal atau di Lambda @Edge CloudFront dan Functions. Anda dapat membandingkan nilai header dengan daftar sidik jari malware yang diketahui untuk memblokir klien jahat. Anda juga dapat membandingkan nilai header dengan daftar sidik jari yang diharapkan untuk mengizinkan permintaan hanya dari klien yang dikenal.