Programista PHP MySQL
o programowaniu w PHP słów kilka

Walka z robotami

Opublikowano dnia Thursday, 23 March 2006 przez Łukasz Jarzembowski

SPAMowanie nie zna granic. Roboty, które kiedyś chodziły po stronach w poszukiwaniu adresów e-mail, teraz są już lepiej “uzbrojone” - automatycznie wypełniają wszelkie formularze na stronach WWW…

Roboty takie wypełniają formularze “myśląc”, że są to formularze kontaktowe, a dane z nich pobrane są od razu wysyłane do właściciela serwisu funkcją mail.

Często trafiają w dziesiątkę i właściciel serwisu otrzymuje SPAM’a z własnej strony. Czasami trafiają jeszcze lepiej - SPAM’a orzymują wszyscy wpisani na listę mailingową, do której kieruje formularz. Często też wypełniają formularze rejestracyjne, zakładając nikomu niepotrzebne konta.

Jak z nimi walczyć?

Po pierwsze, zawsze sprawdzaj poprawność danych odebranych przez skrypt. Przykładowo, w formularzach rejestracyjnych zawsze sprawdzaj poprawność wpisanego adresu e-mail oraz rządaj od użytkowników loginów spełniających określone kryteria (np. same małe litery i cyfry, bez spacji i znaków specjalnych).

Po drugie, jeżeli formularz służy do wysyłania maili do większej ilości osób, wprowadź funkcję moderacji. Polega to na tym, że dane z formularza są zapisywane w bazie danych, a do moderatora (np. Ciebie) jest wysyłany mail z informacją, jakie dane zostały wpisane oraz z linkiem, którego klikniecie jest równoznaczne z wysłaniem wszystkich maila.

Po trzecie, możesz tworzyć formularze z “fałszywą akcją”. Oto przykład:

<form method=”post” action=”nieistniejaca_strona.php” onsubmit=”this.action=’odbierz_dane.php‘”>

Zauważ, że parametr action tego formularza wskazuje na nieistniejącą stronę, lub stronę, której zadaniem nie jest przetwarzanie danych z formularza. Dopiero przy wysyłaniu formularza (zdarzenie onsubmit) podmieniamy stronę, do której mamy wysłać dane na prawidłową.

Wykorzystałem tutaj język JavaScript. Wiele robotów nie umie go obsługiwać, więc formularze wykonane w taki sposób są na razie bezpieczne. Oczywiście, jeżeli znasz język JavaScript, możesz zmodyfikować ten skrypt, aby jeszcze bardziej utrudnić życie robotom :-)

Jeżeli spodobał Ci się ten wpis, proszę go
lub poleć przez inne serwisy społecznościowe: dodajdo    
Łukasz Jarzembowski Łukasz Jarzembowski, autor bloga - od 2006 roku łudzi się, że będzie bogaty... ;-) ale nadal ciężko nad tym pracuje. Programuje, bloguje, i pozycjonuje, tworząc i promując swoje e-biznes­y. kontakt
 

Wpisy podobne do "Walka z robotami"

    No related posts

Skomentuj