![]() |
Zastita klasicne PHP contact forme od spama?
Zastita klasicne PHP contact forme od spama (automatske poste, ajd tako da se izrazim) ?
Imam neku formicu koju stalno provlacim kroz projekte, no u poslednje vreme uzasno mnogo generisanih mailova (gluposti) prolazi kroz njih. Jer ima neko neki dobar link ka nekom resenju ?? |
Stavi captchu, mozes staviti i da ti proverava ispravnost mail domena, ali nije ti neophodno ako stavis captchu jer si vec onemogucio automatske napade, jedino ostaje od smaraca koji ce rucno raditi, a takvih nema mnogo :)
|
a mozes da stavis jednostavan check box koji kaze "Ovo nije spam" i slicno...
ako ne "otkacis" nece poslati... |
Akismet je IMHCO dovoljno dobro rešenje u većini slučajeva.
|
Hvala na predlozima, moram da nadjem vremena pa da pogledam ove linkove. :) Mada mi to sa "nije spam" zvuci najbolje.
Citat:
|
...i pritom obrati pažnju na ovo:
http://www.gerd-riesselmann.net/arch...-contact-forms tj. ovo: http://securephp.damonkohler.com/ind...mail_Injection Nezaštićena kontakt forma može te pretvoriti u spamera :) (ovo pod uslovom da mislis na formu za slanje emaila) |
Mislim da misli na formu za ostavljanje komentara na svom blogu, ili gresim?
|
Citat:
|
Odmah da ti kazem, to sa checkbox-om koji ce neko kao chekirati, nije nikakva zastita, jednostavno jedan post field vise koji saljes kroz request i zavrsen posao.
Resenje koje ce odbiti dobar deo spamera je generisanje nekog hidden field-a sa nekom random vrednoscu unutar forme, i smestanje istog u sesiju (kako bi ga proverio pre slanja) + stopwatch, tj. brojis koliko je sekduni proslo od prvog ucitavanja strane. Jos bolje resenje (nesto slicno koristi spam carma) bi bilo generisanje neceg takvog na klijent strani (ne znam tacno kako bi to odradio), gde je JS integrisan unutar forme. I poslednje, captha, ali ako i samo ako user ne prodje nesto od ovog gornjeg. |
To za client side štopericu i nije problem ako ti ne predstavlja problem čienjenica da nemaju svi uključen JavaScript. Generišeš random ime polje i sačuvaš ga u sesiji na serveru. Printaš input hidden koji ima generisano ime. Setuješ JS interval koji će na svaki tik (1s) uvećavati vrednost hidden polja. Odbijaš sve komentare koji:
1. ne submituju vrednost sa generisanim imenom 2. imaju vrednost manju od npr. 3 sekunde |
Vreme je GMT +2. Trenutno vreme je 19:37. |
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.