Preskoči na vsebino
Manage IT

Varnost

Kaj je rate limiting in zakaj ga vsak sistem potrebuje

Nikola CerićUstanovitelj in direktor, Manage IT

Rate limiting omejuje število zahtev v časovni enoti in ščiti sistem pred zlorabo in preobremenitvijo. Razložimo preprosto.

Rate limiting je tehnika, ki omejuje, kolikokrat lahko nekdo — bodisi pravi človek bodisi avtomatiziran skript ali bot — pošlje zahtevo sistemu v kratkem časovnem obdobju. Praktičen primer: kolikokrat lahko nekdo poskusi prijaviti se v račun ali kolikokrat lahko pošlje kontaktni obrazec, preden sistem začasno blokira nadaljnje poskuse.

Pred čim rate limiting konkretno ščiti

Ugibanje gesel (znano kot brute-force napad) — brez omejitve bi napadalec lahko avtomatizirano preizkusil tisoče gesel na minuto, dokler ne ugane pravega; z rate limitingom se po nekaj napačnih poskusih nadaljnji poskusi začasno blokirajo, zaradi česar tak napad postane nepraktičen.

Spam prek obrazcev in API klicev — omejuje, kolikokrat se isti obrazec ali isti API endpoint lahko uporabita z istega naslova v kratkem času.

Preobremenitev strežnika (nenamerna ali namerna) zaradi izjemno velikega števila zahtev v kratkem časovnem obdobju, ki bi sicer lahko upočasnila ali sesula cel sistem za vse uporabnike.

Kako se rate limiting praktično uporablja

Postavi se na ravni API-jev in obrazcev z razumnimi, konkretnimi pragovi — na primer, največ pet poskusov prijave na minuto na en IP naslov je običajno pravilo. Legitimni uporabniki tega v praksi nikoli ne opazijo, ker se redko zmotijo petkrat zapored v minuti, medtem ko se avtomatizirane zlorabe učinkovito upočasnijo ali povsem blokirajo.

Nikola Cerić

Ustanovitelj in direktor, Manage IT

Več kot 10 let izkušenj z razvojem programske opreme — v lastnem podjetju in v velikih IT podjetjih Balkana.

Imate projekt v mislih?

Zahtevajte ponudbo