Mam dziwne wpisy w księdze gości, właściwie jest to jeszcze wersja testowa, ale już dziś się 3 pojawiły (usunąłem ok. 70 - od kwietnia):
http://pytak.no-ip.org/~trudny/new_moto/book.phpZrobiłem ograniczenie 1 wpis na 1h (po ip), ale tego za bardzo nie wiem, jak się pozbyć.
Może jakieś sugestie?
pzdr
sniezny_wilk
19.05.2008, 22:59:04
Dobry
CAPTCHA załatwi boota.
tiraeth
19.05.2008, 23:06:15
A po co CAPTCHA? Jest wiele innych, dobrze działających (a nawet lepiej) rozwiązań.
Poszukaj na forum, bo już milion razy było!
AxZx
19.05.2008, 23:27:17
zrob pole w formularzy w ktore trzeba bedzie wpisac wynik dzialania matematycznego ktore bedzie wyswietlane obok.
jakies proste losowo ukladne, np 2 + 3, 3 * 1 itd
Cytat
Dobry
CAPTCHA załatwi boota.
po co chcesz zalatwiac
program rozruchowy?
Pilsener
20.05.2008, 07:26:43
Po co na boty jakieś kapcie? Zobacz, jak zabezpieczam formularz dodawania komentarza na brydz.ugu.pl - to tak zwane pasywne zabezpieczenia anty-spamowe, eliminują 99,5% bociszy. Gdy to nie pomaga (bot dedydykowany) wycofujesz się na drugą linię obrony - statystyczny filtr antyspamowy. Ja np. używam Sblam, ale możesz używać nawet kilku naraz. Na moim blogu tego używam i jeszcze żaden bocisz się nie przemknął
Shili
20.05.2008, 10:36:26
Dokładnie, capcha to najgorsze rozwiązanie z możliwych. W tym przypadku wystarczy ograniczyć liczbę linków (na przykład jeśli więcej niż dwa razy pojawi się fraza http:// i https:// wpis nie jest akceptowany - jest to dość prosta metoda, a z tego co wiem mało który prawdziwy użytkownik wstawia więcej niż jeden, maksymalnie dwa adresy stron.
em1X
20.05.2008, 10:50:02
Ktoś mądrze napisał, że zamiast sprawdzać czy piszący jest człowiekiem, lepiej sprawdzać czy jest botem

I ciekawym rozwiązaniem jest umieszczenie niewidocznego pola tekstowego, które jeżeli jest wypełnione oznacza to, że piszący jest botem!
sniezny_wilk
20.05.2008, 12:26:12
Cytat(em1X @ 20.05.2008, 09:50:02 )

Ktoś mądrze napisał, że zamiast sprawdzać czy piszący jest człowiekiem, lepiej sprawdzać czy jest botem

I ciekawym rozwiązaniem jest umieszczenie niewidocznego pola tekstowego, które jeżeli jest wypełnione oznacza to, że piszący jest botem!

Są sprytnie, niektóre się nie nabiorą, lepiej zrobić widoczne i napisać, żeby go nie wypełniać.
Shili
20.05.2008, 12:36:18
Są takie, które rozpoznają nawet frazy (co prawda głównie w języku angielskim, ale potrafią sobie przyporządkować i zostawić puste, tam gdzie jest empty w opisie); są takie, które uzupełniają domyślne pola, nie wszystkie, ale te wymagane w większości serwisów - też mogą pole pozostawić puste. Wydaje mi się jednak, że takie pola to dobry pomysł, o ile następuje po nich jeszcze filtrowanie wyników.
Cytat(Pilsener @ 20.05.2008, 08:26:43 )

Po co na boty jakieś kapcie? Zobacz, jak zabezpieczam formularz dodawania komentarza na brydz.ugu.pl - to tak zwane pasywne zabezpieczenia anty-spamowe, eliminują 99,5% bociszy. Gdy to nie pomaga (bot dedydykowany) wycofujesz się na drugą linię obrony - statystyczny filtr antyspamowy. Ja np. używam Sblam, ale możesz używać nawet kilku naraz. Na moim blogu tego używam i jeszcze żaden bocisz się nie przemknął

No dodałem komentarz i tak za bardzo nie rozumiem, jakie to jest zabezpieczenie, możesz mi nieco rozjaśnić?
Co do obrazków, to też sądzę, że za dużo zamieszania na prostą księgę gości.
Zostaje działanie lub puste pole, może na razie tak spróbuję

pzdr i dzięki za odpowiedzi
Pilsener
20.05.2008, 14:26:15
Cytat
i tak za bardzo nie rozumiem, jakie to jest zabezpieczenie
- bo trzeba by być botem

W kodzie masz takie kwiatki:
<!-- <input type="hidden" name="wnyk" /> -->
<!-- <input type="hidden" name="wnyk2" value="1" /> -->
<input type="hidden" name="wnyk3" /> <input type="hidden" name="token" value="1211289751" />
- to wszystko to kilka sprawdzonych rodzajów pułapek na boty. Zbyt długo by szczegółowo wszystko opisywać, ale w sieci jest parę artykułów na ten temat. No i możesz też ruszyć głową i wysilić wyobraźnię
.radex
20.05.2008, 20:23:34
http://sblam.com/Sblam! i po kłopocie
Dzięki, na razie sprawdzę to:
http://blog.koloda.pl/spam-w-formularzach-...iag-dalszy.html 
Sprawdziłem - nic, zainstalowałem sblam i zobaczcie
http://pytak.no-ip.org/~trudny/new_moto/book.php wpis 'of Ultram'. Co ciekawe to jakby w ogóle nie przeszlo przez mój skrypt dodawania, gdyż był normalny link (wyedytowałem już), jakby funkcja htmlspecialchars() nie zadziałała. Co to może być?;/ (sblam na razie niby żadnego spamu nie wyłapał, a tego wpisu nie ma nawet w tych 'dobrych')
.radex
21.05.2008, 21:32:57
Jesteś pewien, że dobrze to robisz

?
Normalnie działa, a test spamu też okej, więc chyba jest dobrze?
.radex
21.05.2008, 21:51:43
Dziwne... Mi jeszcze Sblam niczego nie przepuścił
No to dam kod, co mi zależy w sumie

<?php
if (isset($_POST['cegla1']) || (!isset($_POST['cegla2']) || $_POST['cegla2'] !== '')) exit; if (!isset($_POST['sub1']) || $_POST['sub1'] != 'Dodaj') exit; if (!(strpos($kolejnosc,'book_autor.book_body.mode.sub1') === 0
|| include_once('class/sblam/sblamtest.php');
$rezultat = sblamtestpost
(array('book_body','book_autor',NULL,NULL),'klucz'); if ($rezultat > 0) {
$title = 'Błąd!';
require_once('head.php');
echo '<p class="red">Przepraszamy - Twój post został uznany za spam!</p>'; echo '<p><a href="book.php?mode=add">Spróbuj się wpisać jeszcze raz.</a></p>'; require_once('foot.php');
}
?>
wcześniej jakieś inne sposoby, ze stronki, co wcześniej pisałem.
A i zapisuje sobie IP ze zmiennej $_SERVER['REMOTE_ADDR'], a te wpisy to pole maja puste.
Black-Berry
23.05.2008, 13:41:27
Black-Berry ?
Już nie wiem, zrobiłem te pasywne zabezpieczenia, sblam, ograniczyłem linki do 2, a znów się pojawiły 2 spamy/wpisy ;/ Poza tym to ip się nie wpisuje, to taki spryciarz, czy jest możliwość, że to bezpośrednio do bazy wpada?
szagi3891
24.05.2008, 09:10:35
Czy ktoś może przytoczyć sposoby tworzenia pułapek na boty ? Ewentualnie czy ktoś posiada jakieś ciekawe linki prowadzące do stron o tej tematyce ?
grzemach
24.05.2008, 09:28:26
przyłączam się do prośby jakiś artykuł ktoś może podać?
Athlan
24.05.2008, 18:14:25
Pisałem o tym kiedyś dość obszeny materiał:
http://athlan.pl/obrona-przed-spamem/Sblam odradzam, jest fantastyczny, ale czasem dodanie komentarza zamula kilkadzisiąt sekund, kilka razmy mialem nawet timeouta.
Dobry przykład (czyli o robieniu botów w bambuko

):
http://athlan.pl/code/html-antispam
szagi3891
24.05.2008, 21:56:02
Jedyne w Twoim zabezpieczeniu nie podoba mi się to że używać javascript. Mimo wszystko nie wszyscy muszą mieć włączoną obsługę javascript.
Osobiście używam innego zabezpieczenia. Dodaje dodatkowe pole ukryte które dla żartu nazwałem "temida". To pole zawiera zaszyfrowaną datę oraz godzinę wygenerowania formularza co do sekund. Nikt tego nie odczyta gdyż klucz znajduje się na serwerze i tylko skrypty mają do niego dostęp.
Skrypt odbierający dane z tego formularza sprawdza jaki jest czas kiedy nastąpiło kliknięcie na dodanie komentarza. Jeśli to było szybkie dodanie, czas od wygenerowania do kliknięcia dodania jest mniejszy niż 10 sekund, komentarza jest odrzucany. Jeśli od wygenerowania formularza minęła godzina to komentarz również jest odrzucany. Wbrew swojej prostocie to zabezpieczenie sprawdza się bardzo dobrze. Większość robotów zaraz po pobraniu strony próbuje dodać swój wpis bądź pobiera stronę i na podstawie tej zapisanej strony nawet po dwóch miesiącach od wygenerowania próbuje dodać jakieś wpisy.
Dodałem jeszcze regułę odrzucającą komentarz ze słowem viagra i nic praktycznie nie przeszło do tej pory
.radex
24.05.2008, 22:22:45
Ja ostatnio wymyśliłem (no, ba. Widziałem też to w innych miejscach

) taki prosty sposób: podanie w formie tekstu różnych prostych matematycznych zadań, np:
dwa plus cztery
sześć razy dwa
itd.
Black-Berry
24.05.2008, 23:08:32
@szagi3891 Podoba mi się Twój spób ale co jeśli ktoś napisze bota tak aby wysyłał komentarz po 20 sekundach
Pilsener
25.05.2008, 01:44:15
Cytat
ale co jeśli ktoś napisze bota tak aby wysyłał komentarz po 20 sekundach
- taki bot byłby całkiem nieopłacalny, poza tym z reguły boty wysyłają same nagłówki, więc nie są w stanie wygenerować prawidłowego tokena (czyli czasu) - a nawet jeśli wypełnią token, to podają liczby lub jakieś losowe dane - łatwo się przed tym zabezpieczyć, odrzucając formularze starsze niż np. 15 minut. Poza tym to tylko jeden rodzaj zabezpieczeń, warto połączyć kilka, tak jak ja to zrobiłem kilka postów wyżej - razem to prawie 100% skuteczności.
Cytat
Sblam odradzam, jest fantastyczny, ale czasem dodanie komentarza zamula kilkadzisiąt sekund
- dlatego ja zalecam, aby był, ale jako opcja - czyli w ostateczności (kiedy pasywne blokady sobie nie radzą) SBLAM ON. Pasywne blokady mogą sobie ni radzić tylko wtedy, kiedy ktoś napisze bota dedykowanego specjalnie pod nasz skrypt.
Próbowałem i temu zaradzić, generując losowo inputy i ich name'y, plus opisy jako imgi (też oczywiście dynamicznie tworzone i o losowej nazwie), jednak kilka osób stwierdziło, że zmieniająca się kolejność inputów doprowadzi userów do szału. W każdym bądź razie pomysł jakiś jest, może ktoś to rozwinie
szagi3891
25.05.2008, 08:31:06
@Black-Berry - nie twierdzę że jest to zabezpieczenie które definitywnie upora się ze spamem. Przedstawiam tą metodę tylko jako przykład że można ją wstępnie zastosować do pierwszego przefiltrowania wiadomości.
Greylisting pocztowy działa w podobny sposób. Poczta najpierw jest odrzucana przez serwer i dopiero przy następnej próbie dostarczenia jest przyjmowana przez serwer odbiorcy.
Athlan
25.05.2008, 08:36:12
Widzę, że Waszym motto nie jest na pewno: "Prostota jest piękna".
Ja bym zastosował sposób z dodawaniem liczb (plus ewentualna lokalizacja na inne języki w aplikacjach wielojęzycznych, ponieważ wyrażenie matematyczne ładnie opisać słowami) + zmiana action za pomocą Javascript. Co do % osób nie używających JS, z tego co się orientuję jest ich 1,2%, z czego 90% to boty, co daje 0,12% użytkowników Internetu.
*poprawione z 0.03 na 0.12%, pomylilem sie.
bim2
25.05.2008, 10:18:02
Rozwiązanie Athlana oraz zakomentowaniem inputa z pustymi wartosciami wydaje mi się idealne. Ja bym się nie przejmował już ludźmi bez JS, bo jak komuś będzie zależało na poprawnym działaniu strony, to sobie to włączy (mówimy o 0,03% użytkowników z wyłączoną obsługą JS).
szagi3891
25.05.2008, 10:59:54
@Athlan - coś mi się nie podoba Twoja matematyka
Przy założeniu że 90% z klientów bez włączonego js to roboty. -> wynika z tego że 10 % to ludzie którzy mają wyłączoną javę script.
Jeśli zakładasz że 1,2% to procent wszystkich klientów bez js to całkowita liczba "ludzi właściwych" nie posiadających włączonej javyscript wynosi 1,2% * 10% = 0,12% a nie jak piszesz wyżej 0,03%
Odnośnie prostoty. To jest prostota dla Ciebie czy dla Twoich użytkowników ? Moim zdaniem bardziej nieprofesjonalnie wygląda strona na której oprócz pól do dodania nowego postu/komentarza/czegokolwiek znajduje się jeszcze dodatkowe pytanie z polem gdzie pisze "podaj wynik równania 2 + 2" lub wprowadź kod z obrazka (który jest często podobny do któregoś ze znakomitych dzieł picassa). Wybacz ale to wygląda jak by się webmasterowi zupełnie nic nie chciało i zrobił prostą łatę która ograniczy problem ze spamem. Jest to przerzucanie wykonywania dodatkowych czynności na użytkownika. Powinno dążyć się w przeciwnym kierunku, użytkownik powinien się martwić niczym innym oprócz wprowadzenia właściwej treści a to czy strona pada ofiarą botów czy nie to użytkownika tak naprawdę nie obchodzi.
Wydaję mi się, że wiele zrobiłem, jednak dalej ten spam się przedostaje;/ Jeszcze jedno pytanie: to zależy też od serwera?
Co do tego kodu:
<form action="http://example.com/" method="post" id="form"> <!--pola(...) -->
<div style="display: none;"> <label for="form_mail">Tego pola nie wypełniaj:
</label> <input type="text" name="mail" id="form_mail" value="" />
<input type="submit" value="Dodaj komentarz" />
<script type="text/javascript"> function AntispamComment(sId, sAction)
{
document.getElementById(sId).action = sAction;
}
AntispamComment('form', 'http://athlan.vgroup.pl/')
To rozumiem, że action zostawiam dosłownie: 'http://example.com/'? I nie bardzo rozumiem, jak ten formularz ma być wysyłany? Jeśli umieszczę skrypt js w tym samym pliku to funkcja się wykona po kliknięciu dodaj komentarz?
dzięki wszystkim za odpowiedzi
.radex
26.05.2008, 18:01:10
Raczej skorzystałbym z .setAttribute - choć na JS'ie się słabo znam, może tak też działa.
Po za tym ja bym nie bawił się JS'em w tych celach.
szagi3891 - może nieprofesjonalnie na stronie firmowej tak (choć znam ludzi, którzy nawet tam dają rzeczy typu 4+6=?), ale na stronie domowej czemu nie?
Też bym js nie dawał, ale ten spam jakoś sie nie poddaje.
.radex
26.05.2008, 18:15:11
Może moderacja komentarzy po IP? Pierwszy raz trzeba sprawdzić, jeśli będzie ok, będzie dalej przyjmowało bez pytania.
JS mnie jakoś nie przekonuje.
Przez zmienna $_SERVER['REMOTED_ADDR']? I co masz na myśli pisząc 'moderacja'?
.radex
26.05.2008, 18:37:57
Mówiąc 'moderacja' miałem na myśli sprawdzenie pierwszego wysłanego komentarza/czegośtam innego z danego IP. Jeśli post będzie ok - zostanie zaakceptowany, kolejne posty będą przychodzić bez sprawdzania przez moderatora.
Oczywiście nie jest to odporne na zmienne ip, ale wraz z sblam wychodzi nieźle.
Tak, tylko pole ip przy wpisach od botów w bazie mam puste...
.radex
26.05.2008, 19:47:22
Lejto
27.05.2008, 11:34:46
a if'a można do tego napisać a tablicą array(); botów?
Pobrieram ip tą funkcją i dalej nie zapisuje.
Zrobiłem nawet ten myk z js i już mi się jakiś spam wje... :/
Powtórzę pytanie: czy to może zależeć też od serwera?
Firez
29.05.2008, 17:04:17
Wprawdzie captcha utrudnia nieco userowi korzystanie z serwisu oprócz zatrzymywania spamu przydaje się także do zwiększania poziomu komentarzy.
Sam spam doskonale można powstrzymać przez sblam [około 90-99% spamu] - ale imho warto czasem dać userowi pole formularza nad którym się będzie musial nieco zastanowić. Po wstawieniu captcha na mojej stronie zauważylem znaczne [nie prowadziłem dokładnych statystych] zmniejszenie się ilości bezsensownych komentarzy typu 'aaaaeee', 'd*pa' czy 'xD'. I moderator ma mniej roboty...
Tylko ja stosuję sporo zabezpieczeń pasywnych i sblam, a efekt taki:
http://pytak.no-ip.org/~trudny/new_moto/book.phpNaprawdę już tylko captcha? Czy może coś źle robię? (ew. co mogę źle robić, skoro pozornie wszystko jest ok)
pest
29.05.2008, 17:24:52
A potrzebne ci w ogóle możliwość podania linku we wpisie?
Ja w księdze gości na stronie ośrodka wczasowego wstawiłem regułę, że wszystko co ma link trafia do moderatora lub jest od razu wyrzucane. Ludzie się wpisują, spamu nie ma i nikt nie marudził jeszcze, że nie mógł podać linka.
no nawet, jak bym nie dał linka to będzie spam, tylko w formie tekstowej
wlamywacz
30.05.2008, 09:51:58
pestLOL
Jeśli dobrze pamiętam jeśli w form nie ma action to zapytanie robie do strony na której się znajduje i zobacz to u siebie:
Adres:
http://pytak.no-ip.org/~trudny/new_moto/book.php?mode=addI "antyspam":
<script type="text/javascript"> function AntispamComment(sId, sAction)
{
document.getElementById(sId).action = sAction;
}
AntispamComment('book_formadd', 'book.php')
Wysyłaj dane do innego pliku i zobacz czy podziała ;]
Btw. BBC i znacznik b i url sie
[zmoderowane] ;/
wlamywacz, ja wszystko rozumiem, ale proszę bez wulgaryzmów w wypowiedziach publicznych /kszychu/
pest
30.05.2008, 10:11:51
Cytat(wlamywacz @ 30.05.2008, 10:51:58 )

To chyba znaczy, że nie uważasz tego za dobre rozwiązanie

.
W sume ja też, ale tam się wpisują ludzie, którzy rzadko wiedzą jak się formatuje tekst i nie ma tam obsługi bbcode, więc jak ktoś na siłę wali "[url=" albo coś podobnego, to jest to dość podejrzane.
wlamywacz
30.05.2008, 12:40:48
O te BBC chodziło mi o form.php.pl ^^ a nie o Twoją stronę i zastosuj się do moich porad
Czyli lepiej dać przekierowanie do innego pliku, bo bot pomija
http://example.com/?
Jakoś już nie mam siły do tego. Możecie mi polecić jakąś klasę captcha? Może tak się uda.
Athlan
14.06.2008, 15:43:12
Ostatnio na
http://email.vgroup.pl zastosowałem dość proste rozwiązanie:
Zaznacz dowolne X checkboxsy, gdzie X to liczba od 2-4. UWAGA! Takie nowinki nie są skuteczne, ponieważ bardzo prosto pod nie napisać dedykowanego bota. No ale chyba wszystkie poza nimi odpadają

Ewentualnie liczbę można dać w obrazku no w logo... zaznacz tyle checkboxów, ile widzisz gwiazdek na obrazku, tutaj kolejne nooby odpadają
marcio
14.06.2008, 18:14:47
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.