Rate Limiting adalah suatu strategi untuk membatasi seberapa sering seorang dapat mengulangi suatu tindakannya dalam jangka waktu tertentu. misalnya, ada bot yang akan masuk ke dalam akun.
Dengan Rate Limiting dapat membantu untuk menghentikan jenis aktivitas bot yang melakukan upaya terus menerus untuk masuk ke dalam akun. Akan tetapi ini sebenarnya bukan solusi lengkap untuk mengelola aktivitas yang dilakukan bot.
Jenis serangan yang dapat dihentikan oleh Rate Limiting
Rate Limiting sering digunakan untuk menghentikan aktivitas bot jahat agar tidak berdampak negatif pada situs web atau aplikasi. Serangan bot yang dapat dikurangi dengan Rate Limiting yaitu:
- Brute Force Attacks
- Dos dan DDoS Attacks
- Web Scraping
Baca Juga
Rate Limiting juga dapat melindungan dari request API yang berlebihan, yang belum tentu berbahaya atau karena aktivitas bot. akan tetapi tetap perlu untuk melakukan pencegahan.
Cara Kerja Rate Limiting
Rate Limiting akan berjalan di dalam aplikasi, bukan berjalan di server web itu sendiri. Biasanya, didasarkan pada pelacakan alamat IP dari permintaan, dan pelacakan berapa banyak waktu yang berlalu di antara setiap permintaan.
Bagi yang belum tahu apa itu alamat IP. Alamat IP adalah kode unik yang diberikan pada setiap koneksi internet. Dengan alamat IP dapat dengan mudah untuk mengetahui siapa, kapan, dan bagaimana permintaan itu dibuat.
Solusi Rate Limiting yaitu mengukur jumlah waktu antara setiap permintaan dari setiap alamat IP, dan juga mengukur jumlah permintaan dalam jangka waktu tertentu. Jika ada terlalu banyak permintaan dari satu IP dalam jangka waktu tertentu, solusi ini tidak akan memenuhi permintaan alamat IP untuk jangka waktu tertentu.
Cara Kerja Rate Limiting Pada Form Login
Ketika sesorang akan login kedalam akun, namun mendapati bahwa terkunci karena gagal login kedalam akun dalam waktu singkat. Hal ini terjadi ketika situs web memiliki Rate Limiting pada form login.
Tindakan pencegahan seperti ini ada, bukan untuk menggagalkan pengguna yang lupa kata sandi, akan tetapi untuk memblokir serangan brute force dimana bot akan mencoba ribuan kata sandi yang berbeda untuk menebak kata sandi yang benar dan membobol akun. Jika bot hanya melakukan 3 atau 4 upaya masuk dalam satu jam, maka serangan seperti itu secara statistik tidak mungkin berhasil.
Cara Kerja Rate Limiting Pada API
Metode ini dapat digunakan untuk mencegah bahaya pada API yaitu dengan cara mengoptimalkan dan membatasi permintaan pada API dari satu alamat IP. Dengan ini memastikan bahwa tidak ada satu pun pengguna API yang menggunakan API secara berlebihan dan aksesibilitas API seragam.
Rate Limiting pada API ini membantu dari serangan bot berbahaya. Penyerangan dapat menggunakan bot untuk membuat begitu banyak panggilan berulang ke API sehingga membuat layanan tidak tersedia untuk orang lain, atau menghentikan layanan sama sekali. Ini adalah jenis serangan DoS atau DDoS.