Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]prosty AntySpamBot
Forum PHP.pl > Forum > Przedszkole
fate
Mam pytanie bo przerobiłem taki skromny skrypcik z działaniem matematycznym anty bot w taki sposób że uznałem, że dla użytkownika byłoby miło żeby mógł jedną ręka dać się sprawdzić czyli zamiast wpisywać wynik z klawiatury w pole do sprawdzenia wykonałem skrypt który tworzy 3 inputy i 1 znich z właściwą liczbą ma typ submit a 2 pozostałe button i user może sobie kliknąć.

Wszystko fajnie jakoś to trybi tylko teraz zastanowiłem się czy to w ogóle jest to ochrona przed botem skoro php wygeneruje mi i tak źródło strony z jednym submitem do formularza to czy bot go nie kliknie z automatu i wysłane a tylko test matematyczny z tego mi wyszedł dla usera się obawiam??

nie ma co chyba smarować kodem myśle że wyjasniłem ocb czekam na wasze opinie lub sugestie, na jakiej zasadzie działają boty bo nie mam pojęcia wstydnis.gif
d3ut3r
Cały myk z zabezpieczeniem polega na tym żeby nigdzie w kodzie nie było wskazówki na temat odpowiedzi. Swoją drogą dedykowany skrypt który potrafi znaleźć w źródle strony wyrażenie matematyczne nie będzie miał problemu z przesłaniem odpowiedzi. Dlatego to zabezpieczenie jest dobre do masowych spambotów jak ktoś się uprze na twój skrypt to tym go nie zatrzymasz. Podczas gdy captcha już nie jest taka prosta do złamania.

Co do samego rozwiązania to też imho bez sensu tworząc spam bota wysyłam wszystkie zmienne łącznie z submitem więc jeżeli to będzie jedyny submit to również go wyślę.

np kod:

  1. <form action="" method="post">
  2.  
  3. <input type="text" name="imie" value="" required="required" />
  4. <input type="text" name="nazwisko" value="" required="required" />
  5. <input type="text" name="adres" value="" required="required" />
  6. <input type="button" name="wynik" value="3">
  7. <input type="submit" name="wynik" value="5" />
  8. <input type="button" name="wynik" value="4">
  9.  
  10. </form>


spambot zapewne wyśle request:
  1.  
  2. // $_POST
  3.  
  4. 'imie'=>'spammer',
  5. 'nazwisko'=>'kolejny tekst spamu',
  6. 'adres'=>'kolejny tekst spamu',
  7. 'wynik'=>'5'
  8.  
  9. );


wg tego co napisałeś, twój skrypt zaakceptuje takie żądanie ?
tab
a ja powiem tak, zadna captcha ani inne zabezpieczenia nie pomoga na spamboty jezeli ktos bedzie wystarczajaco zawiziety. wiekszosc 'antyspambotow' tylko irytuje uzytkownikow a i tak przepuszcza sporo botów. jezeli masz mały serwis to darowałbym sobie w ogole takie zabezpieczenia, po co niepotrzebnie irytowac tych kilku userów którzy ja odwiedzaja? a jezeli juz sie uprzesz to daj ta captche, inputy czy wyrazenia matematyczne i w ogole wszystko co da sie odczuytac z kodu jest nieefektowne. polecam lekture do poduszki: http://pornel.net/captcha tongue.gif
Dominator
@Up

Captcha obrazkowa nie daje rady powiadasz. Lecz według mnie captcha dźwiękowa załatwiłaby sprawę wink.gif
fate
Przejdzie.. coś jeszcze pomyśle w tej kwestii z czasem.
Serwis stoi ale użytkowników brak, narazie jest to czysto produkcyjno edukacyjna platforma więc to nie są jakieś niezbędne zabiegi. W takim razie prosty antyfloodzik na cookies będzie stał na straży serwisu bo do dodawania komentów nie ma co zniechęcać zwłaszcze dopóki nie ma chętnych ażeby takowe zostawiać oneeyedsmiley02.png
Dzieki za rady
szczemp
Jak już robić zabezpieczenia to takie, które nie dają wprost informacji jakie działanie wykonać ma użytkownik. Obrazki boty też potrafią odczytać. Widziałem gdzieś takie zabezpieczenie: 'Do dzisiejszego dnia miesiąca dodaj 5 i podaj wynik'. Wydaje się być bardzo proste do zaimplementowania i nie daje wprost liczb do obliczenia, co eliminuje duża liczbę botów. Tak samo można obie liczby podać niejawnie. Np od roku bitwy pod Grunwaldem odejmij rok chrztu Polski. W takim wypadku trzeba gdzieś mieć zdefiniowane liczby przypisane konkretnym tekstom. Dodatkowo jeśli to portal historyczny to użytkownicy coś wiedzą z tej dziedziny i takie daty znają. Dla każdej innej dziedziny są takie 'sztywne liczby', które można użyć.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.