IP cím tiltásával szeretném növelni a biztonságot. Hogyan kéne csinálnom?
Több problémába is ütköztem.
A) "UPDATE ipaddress SET query = query+1,timestamp = :time WHERE ip = :ip";
Amikor frissítem az oldalt, a fenti lekérdezést elméletileg egyszer hívom meg az oldal eljén, mégis 4-5-öt ad hozzá a query-hez. Nem használok header('location:') függványt, pláne nem 5-ször.
B) Mekkora intervallumot érdemes nézni a lekérdezések tekintetében? Jelenleg a következő az algoritmusom:
1. "SELECT id,query,timestamp,forbidden FROM ipaddress WHERE ip = :ip"
2. if(count(ip) > 0){
if(forbidden && time > timestamp + 1 nap) {databázis -> feloldom az ip tiltását}
if(forbidden){ DIE }
if(time > timestamp){adatbázis -> query = 0}
if((time-timestamp <= 1 && query > 20){adatbézis -> tiltás rögzítése (ha 1 másodpercen belül 20-nál több kérés érkezik}
}
else{adatbázis -> ip rögzítése}
adatbázis -> query+1, timestamp = time
prbáltam érthetően írni, hogy ne az én kódomat kelljen bogarászni. :)
Ha a brute force ellen akarod védeni, használj captcha-t.
Ha túlterhelés ellen, akkor meg ne a kódban tedd, hanem a túzfalon.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!