Walka z robotami
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
Wpisy podobne do "Walka z robotami"
- No related posts