Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [algorytm] Blokada spamu przy wysyłaniu formularza
Forum PHP.pl > Forum > Gotowe rozwiązania > Algorytmy, klasy, funkcje
Sephirus
Witam.

Wpadłem ostatnio na dość (moim zdaniem) ciekawy sposób na zabezpieczenie formularza przed botami spamującymi. Szukałem czegoś alternatywnego do captcha ale milszego dla użytkownika (bez potrzeby przepisywania pokręconych znaczków).

Zanim opiszę mój pomysł chciałbym go przetestować i prosić o jego ocenę toteż na stronie tutaj (przepraszam za darmowy serwer i reklamę na górze tongue.gif) wrzuciłem przykład...

Przykład składa się z pola do wpisania e-mail (oczywiście przyjmie wszystko - musiałem je jakoś nazwać... nie wpisujcie tam swoich e-maili) oraz dodatkowego pseudo-zabezpieczenia jakim jest suma 2 losowo generowanych liczb z zakresu 1-9.

Od razu zaznaczam, że element z sumowaniem liczb jest tam w celu zmylenia "przeciwnika".

Jeżeli ktoś byłby chętny spróbować napisać coś co wyśle ten formularz i dostanie w odpowiedzi "OK" to zapraszam smile.gif - innymi słowy zabawa dla ciekawych i znudzonych wink.gif

Dziękuję za pomoc, testy i ocenę wink.gif

EDIT: Nie sądzę bym był pierwszym, który wpadł na coś takiego - żeby nie było - ale się z tym nie spotkałem... wink.gif
by_ikar
W tokenie jest suma kontrolna z sumy tych dwóch podanych liczb? Tzn suma liczb plus pewnie jakaś sól wink.gif powiem ci tyle, że zsumowanie takich dwóch liczb i przekazanie je do formularza, nie jest raczej czymś specjalnym dla boota. I w sumie sam bym mógł takiego napisać bez większego problemu..
Sephirus
smile.gif To nie jest tak... Jak pisałem to z sumowanie liczb jest dla niepoznaki smile.gif oczywiście jest sprawdzane... ale nie to jest główne zabezpieczenie tongue.gif

Sam token nie ma nic wspólnego z sumą liczb - te dwie rzeczy są niezależne.

W Formie są 3 zabezpieczenia:
1. Token - standardowe zabezpieczenie CSRF
2. Suma A+B - alternatywa dla captcha
3. "coś" - czego wyjawić narazie nie mogę... wink.gif

i właśnie to "coś" chcę przetestować smile.gif Ale żeby to zrobić to trzeba by było spróbować napisać kod, który wyśle coś z tego forma tak by system wyłapał to jako poprawne wysłanie i wyświetlił "OK" smile.gif

Powiem jeszcze tak:

bez punktów 1 i 2 zabezpieczenie nadal by działało smile.gif
by_ikar
Dobra, to nie wiem co to jest i gdzie to może być wink.gif czekam kiedy podzielisz się tym "czymś" wink.gif
Sephirus
Idealnie by było gdyby ktoś zechciał z tym pokombinować sad.gif Bo tak od razu zdradzać całą tajemnicę... :/

1 znajomy programista z pracy wymiękł dość szybko... Ale nie jest jego specjalnością łamanie takich zabezpieczeń tongue.gif

Ja się bawiłem w rozwalanie tego typu formularzy i na to co w nim zrobiłem raczej bym za szybko nie wpadł... A swego czasu wszelkiego rodzaju formularze hostingów z plikami, filmami itd... (wszystkim dobrze znane i lubiane) były dość proste do złamania (na przykład logowania itd...) Postanowiłem zatem zrobić coś nowego i wrzucić w miejscu, gdzie z doświadczenia własnego bym po prostu nie szukał tongue.gif

W celach motywacyjnych dla pierwszej osoby, która to zabezpieczenie złamie czeka równowartość dwóch dobrych PIW! (bezalkoholowych "oczywiście") smile.gif
by_ikar
Dobra, z racji że podbiłeś stawkę, to będę jeszcze raz strzelać wink.gif w sesji przechowujesz czas wejścia do formularza, następnie porównujesz go z czasem wysłania formularza i jeżeli jest dość niewielki, wtedy zaliczasz to jako robota? Innych opcji już tutaj nie dostrzegam biggrin.gif
Sephirus
Hmm to o czym mówisz też jest dobre smile.gif Ale spotkałem się z tym gdzieś i da się to obejść oczywiście poprzez "odczekanie" przez robota - ale to jest całkiem dobre zabezpieczenie (tylko trzeba dobrze dobrać wartości tych czasów).

Niestety... u mnie jest coś innego smile.gif
by_ikar
Tak też się spotkałem z tym czekaniem przez robota, tyle że w wielu przypadkach jest to średnio opłacalne. Powiedzmy dasz 10 sekund, przy nieco większym formularzu, i komu się będzie chciało spamować, jeżeli 1 wpis będzie zajmować 10 sekund wink.gif

Jeżeli to nie to, pozostaje już chyba w moim skromnym "arsenale", jedynie opcja sprawdzania odstępu czasu między jednym wysłaniem formularza a drugim. Jeżeli również to nie to, no to niestety, wszystkie karty wyłożyłem, a asa w rękawie brak wink.gif
Sephirus
hmm sad.gif niestety... zabezpieczenie nie ma nic wspólnego z jakimkolwiek czasem :/ Dziękuję jednak za zainteresowanie - potwierdza to na razie abstrakcyjność rozwiązania co mnie cieszy wink.gif
by_ikar
Mam jedynie nadzieje, że jeżeli za bardzo nie będą ludzie chcieli się bawić w łamanie twojego zabezpieczenia, lub nikomu nie uda się go złamać, że mimo to podzielisz się szczegółami, lub wyjaśnisz samą zasadę działania tego zabezpieczenia wink.gif
Sephirus
Jeżeli nikt go nie złamie to wyjawię tylko zainteresowanym smile.gif (Na pewno Tobie ;P) Ale to nie jest jakieś super zabezpieczenie - jego moc jest w abstrakcyjności ;P

Narazie jeszcze poczekam - może ktoś się jeszcze znajdzie tongue.gif

Gdzie są Ci chętni do pracy hackerzy gdy ich potrzeba... Anonymous!!! ;P haha.gif
xxdrago
Ja dam mój pomysł, zastanawiałem się czy nie lepiej dodać pola typu hidden, i nazwać je e-mail? Jeżeli bot je uzupełni to formularz nie przejdzie.

A twoje zabezpieczenie to nie jest czasami sprawdzenie "przeglądarki" z jakiej user korzysta (wiem , że da się to ominąć) ? smile.gif
Crozin
@xxdrago: Przy okazji na filtr załapią się wszystkie osoby z automatycznym wypełnianiem formularza.
@by_ikar: Co to za problem otworzyć 5 000 sesji gdzie każda z nich, równolegle, będzie odczekiwać te 10 sekund?
@Sephirus: Security through obscurity to jedna z tych metod, które daje jedynie fałszywe poczucie bezpieczeństwa.
xxdrago
Crozin, wiem o tym to chyba też o to chodzi, aby pola były wypełnione "ręcznie". Sposób musi być taki , aby nie denerwował użytkownika, głownie o to chodzi.
Sephirus
Odrzucam wszelkie "zabezpieczenia" na zasadzie ukrytych pól itd... powód - tego typu zabezpieczenia opierają się albo na JS albo na CSS. Manipulacja JS lub CSS i jesteśmy w domu.

@crozin Security through obscurity - nie do końca zgadzam się z tą opinią - wszystko trzeba odpowiednio używać. Indywidualne zabezpieczenia, oryginalne mają tą przewagę przynajmniej że nie ma na nie gotowych rozwiązań, zatem ktoś musi te rozwiązania wynaleźć (to tylko kwestia czasu) a to zajmuje troszkę i część się podda wyszukując przy tym mniej oryginalnego przedmiotu ataku.

Cytat
A twoje zabezpieczenie to nie jest czasami sprawdzenie "przeglądarki" z jakiej user korzysta (wiem , że da się to ominąć) ?


Nie do końca wiem o co Ci chodzi xxdrago ;P User-Agent? To by było żadne zabezpieczenie... Fingerprint przeglądarki z kolei nie ma tu zastosowania... evercookie tym bardziej więc serio nie wiem o które z tych rzeczy Ci chodzi wink.gif

W skrócie - NIE - nie ma to nic wspólnego z przeglądarką wink.gif
xxdrago
Nie ma chyba innej możliwości, mógłbyś dać wersje bez działania matematycznego? Tylko samo podanie e-mail?
Sephirus
Jest bez wink.gif

I jak xxdrago udało się coś zrobić? Znaleźć o co chodzi?
xxdrago
Próbowałem, coś się bawić w CURL ale ten token jest też ciężko złamać, wyłącz go i pobawię się jeszcze i ci dam znać, czy da sie uzupełnić bez "człowieka".
Sephirus
ok wieczorkiem koło 19 tokena nie będzie (teraz nie mam jak zmienić)
Crozin
@Sephirus: Złamanie zabezpieczenia zajęło mi... około 90 sekund. spam.png - wcale nie rzuca się w oczy. wink.gif

Dodatkowo:
1. Jeżeli coś jest źle (jakiś błąd wywali), dam cofnij i jeszcze raz (poprawnie) wypełnię wywala informację o spamie (nie wiem czy to token czy spam.png powodował).
2. Jeżeli ktoś wyłączy sobie wyświetlanie obrazków (np. korzystając z Internetu przez GPRS) to może zapomnieć o wypełnieniu formularza. Nie będzie też mieć pojęcia dlaczego nie może go wysłać.
askone
Kurcze - raz mi się udało dostać OK - tylko nie wiem co takiego zrobiłem... Nie potrafię powtórzyć sad.gif

ps. Spam.png - ciekawe, działa, ale nadal jestem ciekaw na jakiej zasadzie...
Sephirus
Zgadza się smile.gif

To kwestia pomysłu - trzeba by go było oczywiście dopracować wink.gif

1. Cofanie można w łatwy sposób poprawić i używać tego "myku" w odpowiednich miejscach
2. Żyjemy w świecie gdzie... serio... smile.gif raczej się już tak nie robi... tongue.gif Zresztą nie pisałem nic o zastosowaniach mobilnych smile.gif

Chodziło mi o przedstawienie prostego algorytmu działania czyli uzależnienie wysłania forma od czegoś na co bot nie wpadnie zbyt szybko - wydaje mi się że ten pomysł spełnia swoje podstawowe zadanie smile.gif

Poza tym 90 sekund? Nie przesadzaj... sądząc po tym że pisałeś w temacie wcześniej nie sądzę by tyle Ci to całkiem zajęło - weź pod uwagę fakt, że dokładnie było powiedziane których zabezpieczeń nie ma... zatem drogą eliminacji...

Dodatkowo ok - to był przykład - jedno pole i obrazek smile.gif A co jeśli miałbyś normalną stronę z masą grafik? Wpadłbyś tak szybko? smile.gif

Ale ogólnie - ja wiem że nie jest to żaden ideał - pomysł wydał mi się ciekawy stąd go przedstawiłem smile.gif

Skoro już wszystko jasne czekam na szczere opinie (przypominam to tylko prototyp nie pozbawiony widocznych gołym okiem wad) smile.gif

EDIT: Jak obiecałem tak zrobię - podaj dane na PW gdzie i jak Ci wypłacić równowartość 2 piwek wink.gif Zasłużyłeś wink.gif
xxdrago
Mógłbyś udostępnić ten kod? Bo dalej nie czaje o co chodzi:D
Sephirus
Zasada jest prosta wink.gif

Przykładowo:

Dajesz regułkę w .htaccess typu "przekieruj obrazek.jpg na obrazek.php"

W obrazek.php ustawiasz w sesji jakąś zmienną i zwracasz obrazek.

po wysłaniu forma sprawdzasz czy zmienna jest taka jak być powinna

Oczywiście to idea - bo zachodu jest nieco więcej wink.gif
by_ikar
ja w sumie też nie do końca rozumiem działania, aczkolwiek pierwsze co wziąłem pod uwagę to ten obrazek, ale nie zaobserwowałem w nagłówkach niczego co by rzuciło mi się w oczy, i "poszedłem" dalej. Zwłaszcza dałem sobie z nim spokój z racji że był poza formularzem, tym bardziej mnie to zmyliło wink.gif

EDIT: a to tak jak podejrzewałem, że sprawdzasz dane w sesji wink.gif całkiem przyjazne dla użytkownika biggrin.gif

EDIT2: tak na szybko doszedłem do pewnych konkluzji. Może mi ktoś bardziej ogarnięty w temacie powiedzieć, czy booty doczytują css/js? Bo tutaj idea jest dobra. Można taki skrypt ukryć w jakimś obrazku, który jest elementem layoutu. Ale obrazki można wyłączyć. Css wyłączyć się nie da, i dołączenie takiego czegoś w css, raczej jeszcze bardziej mogłoby zbić z tropu wink.gif
Sephirus
Mogłoby ale CSS też się da wyłączyć smile.gif

Ale opcji jest wiele - to jest tylko idea ;P Jak wpadniesz na jakieś fajne miejsce gdzie to upchnąć daj znać wink.gif
Crozin
Cytat
Żyjemy w świecie gdzie... serio... raczej się już tak nie robi... Zresztą nie pisałem nic o zastosowaniach mobilnych
Na komórce dosyć często z tego korzystam, szczególnie gdy jestem poza miastem i zasięg jest słaby. Na desktopach oczywiście, że nikt tego robić nie będzie. ? propos świata... powoli zanika już różnica pomiędzy Internetem mobilnym a pełnoprawnym, desktopowym i nie wypada już mówić, że coś nie jest przeznaczone pod zastosowania mobilne. wink.gif

Co do samego sposobu. Będzie on raczej skuteczny dopóki komuś nie zacznie zależeć na tej jednej konkretnej stronie. Część botów może pobierać obrazy, JS oraz CSS - wcale nie jesteś pierwszą osobą, która wpadła na taki pomysł. wink.gif Niestety może też wyeliminować drobną część internautów, którzy w dodatku nie będą mieli najmniejszego pojęcia co jest nie tak.

Cytat
Poza tym 90 sekund? Nie przesadzaj... sądząc po tym że pisałeś w temacie wcześniej nie sądzę by tyle Ci to całkiem zajęło - weź pod uwagę fakt, że dokładnie było powiedziane których zabezpieczeń nie ma... zatem drogą eliminacji...

Dodatkowo ok - to był przykład - jedno pole i obrazek A co jeśli miałbyś normalną stronę z masą grafik? Wpadłbyś tak szybko?
Fakt, kilka testów mogłem sobie darować (np. przerwa pomiędzy żądaniami). Ale gdy dokładne odwzorowanie dwóch żądań nadal nie wystarczało, następnym krokiem było wyłączenie... normalnie JS/CSS/obrazów, tutaj wystarczyło tylko tych ostatnich - brak jakiegokolwiek użycia JS dało się szybko stwierdzić. Więc normalnie może zajęłoby to do kilku minut. Udawanie przeglądarki jest naprawdę proste.

Cytat
EDIT: Jak obiecałem tak zrobię - podaj dane na PW gdzie i jak Ci wypłacić równowartość 2 piwek Zasłużyłeś
http://www.mpips.gov.pl/download/gfx/mpips...luty%202012.pdf - do wyboru, do koloru.
Fifi209
Cytat(Sephirus @ 6.03.2012, 18:36:09 ) *
Chodziło mi o przedstawienie prostego algorytmu działania czyli uzależnienie wysłania forma od czegoś na co bot nie wpadnie zbyt szybko - wydaje mi się że ten pomysł spełnia swoje podstawowe zadanie smile.gif


Sam napisałem wiele botów, m.in. do gier. Bota pisze się pod coś konkretnego, najpierw badam jak coś działa, wyłączę js etc. sprawdzam czy działa dalej, jeżeli działa to już tylko pozostaje sprawdzenie nagłówków.
marcio
Cytat
Pierwszy, to sprawdzanie z użyciem JavaScriptu, czy użytkownik poruszył myszą, bo, jak wiadomo, boty nią nie ruszają, tylko np. przeglądają kod źródłowy strony albo wysyłają dane metodą POST.

Tak czytam wlasnie w sieci i natrafilem sie na nieco nie typowe rozwiazanie jak dal mnie, czy jest ono skuteczne lub nie sie nie wypowiem bo na js sie nie znam i nie wiem jak wyglada obejscie symulacji ruchem myszki.

EDIT:
Zastanawialem sie tez nad takim troche dziwnym mechaniznem.

A gdyby tak co godzine dodawac taka jakby "sol" do nazwy kazdego pola w kazdym formularzu.
Co godzine losujemy jakis ciag zapisujemy do sesji czy gdzies w jakims pliku jako komentarz php zeby np nie szlo go odczytac i potem dokladac taka sol, wtedy taki bot sam by nie wiedzial jak sie pola nazywaja a nie mysle by byly na tyle madre zeby mogly za kazdym razem wyciagnac nazwe jakis dziwnych nazw pol.
Fifi209
@up
A jaki to problem wyciągnąć nazwę pola?

@topic
Znacznie skuteczniejsze byłoby, gdyby były losowo wybierane grafiki. :-) Pewnie da się zrobić, sam się nad tym zastanawiałem - mogłoby to być dość skuteczne.

Właściwie, gdy zabrałem się za realizację zrezygnowałem, można przecież pobrać wszystko hurtem...
marcio
Cytat
A jaki to problem wyciągnąć nazwę pola?

A taki ze mysle ze taki bot musi wiedziec co gdzie ma wpisac wink.gif a dajac np takie nazwy:
user -> mk3po23sdm
captcha -> fd70fa321

Skad ma wiedziec jakie pole czego sie dotyczy?
by_ikar
@marcio jakiś bot poszukujący konkretnych inputów ominie taki formularz. Ale jeżeli ktoś będzie chciał napisać bota pod konkretne rozwiązanie, to zamiast nazw, powiedzmy poda kolejność tych inputów (kolejność dzieci, względem rodzica). Lub nawet zaczepi się o jakiś ID, czy klasę. Średnio skuteczne rozwiązanie. Bardziej skuteczne jest rozwiązanie w tym temacie, w postaci grafiki wink.gif

Odnośnie losowych obrazów. A przykładowo jakby się wyświetlało jakieś losowe obrazy, i do tych obrazów trzeba byłoby podać ich opis. Np jest sobie zielona trawka na obrazku, a na trawce jest pomarańcz. Wpisz w pole nazwę owocu z obrazka. Gdyby zakres tych obrazków był dość spory, oraz możliwość wpisania podobnych znaczeń (na końcu języka mam słowo określające to "zjawisko"), przykładowo zamiast pomarańcz, możliwość wpisania "pomarancz", czy "pomarańcza" etc. i o ile tych obrazków byłoby dość sporo, wówczas takie zebezpieczenie byłoby by bardziej przeznaczone dla ludzi. O ile litery i cyfry może sobie robot odczytać, o tyle określenie czym może być dana rzecz znajdująca się na obrazku, może mu sprawić na prawdę spore problemy. Chyba że się mylę... wink.gif
Orzeszekk
Cytat(by_ikar @ 7.03.2012, 23:50:09 ) *
@marcio jakiś bot poszukujący konkretnych inputów ominie taki formularz. Ale jeżeli ktoś będzie chciał napisać bota pod konkretne rozwiązanie, to zamiast nazw, powiedzmy poda kolejność tych inputów (kolejność dzieci, względem rodzica). Lub nawet zaczepi się o jakiś ID, czy klasę. Średnio skuteczne rozwiązanie. Bardziej skuteczne jest rozwiązanie w tym temacie, w postaci grafiki wink.gif

Odnośnie losowych obrazów. A przykładowo jakby się wyświetlało jakieś losowe obrazy, i do tych obrazów trzeba byłoby podać ich opis. Np jest sobie zielona trawka na obrazku, a na trawce jest pomarańcz. Wpisz w pole nazwę owocu z obrazka. Gdyby zakres tych obrazków był dość spory, oraz możliwość wpisania podobnych znaczeń (na końcu języka mam słowo określające to "zjawisko"), przykładowo zamiast pomarańcz, możliwość wpisania "pomarancz", czy "pomarańcza" etc. i o ile tych obrazków byłoby dość sporo, wówczas takie zebezpieczenie byłoby by bardziej przeznaczone dla ludzi. O ile litery i cyfry może sobie robot odczytać, o tyle określenie czym może być dana rzecz znajdująca się na obrazku, może mu sprawić na prawdę spore problemy. Chyba że się mylę... wink.gif


Mylisz sie
http://research.microsoft.com/en-us/um/red...rojects/asirra/
takie cos juz istnieje i sie nie przyjeło. Dopoki zbiór obrazow jest skonczony dopóty wietnamczyk ktory do tej pory przepisywal kody reCaptcha siądzie i otaguje obrazy z tej obrazkowej captchy dobrymi odpowiedziami a nastepnie bot prostym porownaniem piksel po pikselu, czy nawet jak zaaplikujesz jakies przeksztalcenia po histogramie rozpozna obrazki i doda ze swojej bazy wiedzy rozwiazanie takie jak trzeba.

Fraktale mają "naturalny" wygląd więc może generowanie fraktali np fraktala który wygląda jak trawa albo płatek śniegu, żuk (mandelbrot) lub płonący statek z lekko modyfikowanymi parametrami funkcji fraktala, tak by zbior mozliwych obrazow do wygenerowania dążył do nieskonczonosci, a nastepnie zadanie uzytkownikowi rozpoznania co jest na obrazku by sie sprawdzilo jako antybot? Jest kilka calkiem ciekawych fraktali min żuk, statek, lisc paproci, płatki sniegu, trojkat / szescian sierpinskiego i na pewno masa innych fraktali by sie znalazla gdyby pomysl wart bylby zachodu smile.gif Przez czlowieka zostaly by rozpoznane nawet jezeli bylyby potraktowane dowolnym skalowaniem/przesunieciem/beczkowatym znieksztalceniem i zabawą barwami.

Nie jestem tylko pewien czy mozna modyfikowac nawet delikatnie parametry fraktala, w koncu fraktal to przyklad chaosu, gdzie bardzo mala zmiana wywoluje bardzo duza zmiane i nie wiem czy nawet niewielka zmiana nie spowoduje rozsypania całego fraktala w większej skali, w takim razie plan spaliłby na panewce, bo fraktal wygenerowany ukladem rownan gdzie jedno z rownan byloby np x^2 = 5x^2 + 3y^3
nie bylby w ogole podobny do fraktala wygenerowanego za pomocą x^2 = 5.000000000000001x^2 + 3y^3

ciezko mi powiedziec bo ostatni kontakt z fraktalami mialem na maturze z inf a to bylo troche czasu temu wiec jesli ktos sie na tym zna lepiej to niech mnie oswieci:)
by_ikar
Cytat(Orzeszekk @ 8.03.2012, 01:53:46 ) *
Mylisz sie
http://research.microsoft.com/en-us/um/red...rojects/asirra/
takie cos juz istnieje i sie nie przyjeło. Dopoki zbiór obrazow jest skonczony dopóty wietnamczyk ktory do tej pory przepisywal kody reCaptcha siądzie i otaguje obrazy z tej obrazkowej captchy dobrymi odpowiedziami a nastepnie bot prostym porownaniem piksel po pikselu, czy nawet jak zaaplikujesz jakies przeksztalcenia po histogramie rozpozna obrazki i doda ze swojej bazy wiedzy rozwiazanie takie jak trzeba.


To akurat jest nie do końca to o czym myślałem. Tutaj musisz zaznaczyć wszystkie koty. Zdjęcia różnią się od siebie, ale obiekty znajdujące się na zdjęciach nie bardzo. Więc ta różnorodność jest niewielka. Tutaj ja myślę o jakiejś większej bazie rzeczy, które można byłoby opisać. Jeżeli powiedzmy ja będę miał 40 milionów "pozycji", to nawet jeżeli komuś uda się je wszystkie zebrać, lub że dany obrazek się powtórzy, to w pierwszym przypadku będzie się gość musiał namęczyć. W drugim przypadku musiałby mieć bardzo duże szczęście, dużo większe niż trafienie 6 w totka.

Podobnie jest z funkcjami hashującymi. Taki sha1, został złamany, ale póki co tylko laboratoryjnie. Podobnie mogłoby być z tym "zabezpieczeniem" obrazkowym, bo na doświadczenia ktoś mógłby sobie pozwolić, ale na to żeby spamować na jakiejś stronie to raczej wątpię. No przynajmniej tak mi się wydaje że to wcale nie jest głupi pomysł wink.gif
marcio
A tak w ogole powiedzcie mi czy w ogole warto jest to zachodu?Co macie na tych stronach ze sie tak boicie mysle ze lepiej jest sie zabezpieczyc przed o wiele grozniejszymi atakami w sieci niz przed spammerami.Wystarczy prosta captcha(nie az taka prosta) rozne czcionki i wielkosci i np jakies linie i kropki na tym o roznym kolorze, no sry ale kto bedzie pisal bota pod wasza strone wybacznie ale takich przypadkow bedzie 1 na 10000.
Sephirus
@up Tu nie chodzi o to, że nasze strony (o wątpliwej dużej liczbie odsłon) chcemy zabezpieczyć. W sieci istnieje problem spamu w komentarzach prywatnych wiadomościach itd... To nie jest wcale małe zagrożenie. Wyobraź sobie na przykład co by było gdyby Facebook (lub podobny serwis) nie miał takich filtrów... dostawał byś dziennie setki maili z reklamami itd itp...

Chodzi o rozmowę na ten temat, szukanie rozwiązań innych niż uciążliwa dla użytkownika Captcha... Wiadomo, że są cięższe ataki ale dobrze ogarniety filtr antyspamowy broni nie tylko przed SPAMEM ale również może bronić przed CSRF, wspomagać walkę z XSS itd. smile.gif

Wiadomo że przed DOS'em nie obroni ale zawsze można o tym pogadać - może się coś nowego wymyśli wink.gif
by_ikar
Nie wiem jak wy, ale ja jestem użytkownikiem i mnie przepisywanie kodów, w większej mierze z mało czytelnych obrazków irytuje. Zwłaszcza reCaptcha, która niekiedy potrafi jakimiś śmiesznymi znakami strzelić, i trzeba klikać w odśwież, do czasu aż będzie to w miarę czytelne. Nie wiem, może to tylko ja mam takie problemy.. wink.gif

Pogadać zawsze można, bo z tego może wyjść niekiedy coś ciekawego. Jak byśmy nie rozmawiali o żadnych problemach, to dnia dzisiejszego pewnie zamiast siedzieć przy komputerze, byś ostrzył swoją włócznie wink.gif

Co myślicie o moim pomyśle z obrazkami, na których znajdują się różne, losowe przedmioty, które można opisać w łatwy sposób, i na podstawie opisu żeby egzekwować czy to jest człowiek?
amii
Nie no generalnie wszystkie kapcie i tego typu cuda są dla użytkownika wkurzające.
Jeśli już jesteśmy przy zabezpieczeniach to co sądzicie o tym: jQuery+PHP http://www.myjqueryplugins.com/QapTcha/demo
Mało uciążliwe dla usera ale nie wiem jak ze skutecznością
Sephirus
To nie jest głupie, przyjrzałem się temu. smile.gif Oczywiście jest do złamania, wystarczy ogólnie przepisać kod pod PHP i odpowiednio wysyłać pod adres formularza itd... smile.gif

Postarali się chłopaki by to poukrywać i zamotać ale da się to złamać. Podoba mi się sam pomysł - spotkałem się już z nim - łatwy dla usera. Nie podoba mi się jedno - jest to moduł do jQuery a co za tym idzie - będzie często używany - a skoro tak to pewnie już są boty które go omijają tongue.gif
xxdrago
Ogólnie, to zauważyłem, na jakiej zasadzie te boty działają. Posiadam forum, po zainstalowaniu jest dostępna standardowa capacha (przepisz cyfry), bardzo prosta, rejestrowało się dużo botów więc, otwarłem paint'a zmieniłem czcionkę, dorysowałem kreski i aktualnie jest cisza, wydaje mi się , że boty mają jakby w pamięci każdy znak danego formularza...(Obrazek bardzo czytelny do przepisania). Co do reCaptcha nawet nie ma sensu jej "instalować" bo jest na nią tyle botów. A nie oszukujmy jeżeli komuś będzie zależało na z automatyzowaniu formularzy to to zrobi...
Orzeszekk
Cytat(marcio @ 8.03.2012, 09:40:04 ) *
A tak w ogole powiedzcie mi czy w ogole warto jest to zachodu?Co macie na tych stronach ze sie tak boicie mysle ze lepiej jest sie zabezpieczyc przed o wiele grozniejszymi atakami w sieci niz przed spammerami.Wystarczy prosta captcha(nie az taka prosta) rozne czcionki i wielkosci i np jakies linie i kropki na tym o roznym kolorze, no sry ale kto bedzie pisal bota pod wasza strone wybacznie ale takich przypadkow bedzie 1 na 10000.


skoro ta captcha ma byc taka prosta i mamy ja pisac samemu i za x godzin pracy miec gorszą captche niz recaptcha to nie lepiej serio tej recaptchy uzyc i byc na bieżąco nie wydajac ani złotówki?
ShadowD
@xxdrago - takie boty to te najprostsze "znające" tylko jedną czcionkę lib w prost mające sygnatury obrazka zapisane w sobie, jedyne zabezpieczenie "z sensem" jakie można zastosować i chronić się w miarę dobrze to sms z kodem, maile już dawno poszły w nie pamięć, a blokowanie nr po błędnym wpisaniu da szybki rezultat, niestety kosztowne.

Co do autora pomysł fajny i bardzo prosty, można korzystać z kilku obrazków na raz a sesję ograniczyć do kilku minut i powinno być dosyć dobrym zabezpieczeniem.
marcio
Cytat
skoro ta captcha ma byc taka prosta i mamy ja pisac samemu i za x godzin pracy miec gorszą captche niz recaptcha to nie lepiej serio tej recaptchy uzyc i byc na bieżąco nie wydajac ani złotówki?

Nie przesadzaj ze x godzin napisanie captchy do bedzie gora 1-2h.
Tak ogolnie rzecz biorac jesli nie jest to warte zachodu to ja stoje na moim i mowie ze nie warto az tak kombinowac jesli naprawde nie jest to potrzebne.

Cytat
@up Tu nie chodzi o to, że nasze strony (o wątpliwej dużej liczbie odsłon) chcemy zabezpieczyć. W sieci istnieje problem spamu w komentarzach prywatnych wiadomościach itd... To nie jest wcale małe zagrożenie. Wyobraź sobie na przykład co by było gdyby Facebook (lub podobny serwis) nie miał takich filtrów... dostawał byś dziennie setki maili z reklamami itd itp...

No to wlasnie i taki FB nie uzywa captchy do zabezpieczenia jako filtro anty-spamowy...

Zamiast babrac sie w jakis kotki i figury co jest wkurzajace IMHO lepiej pomyslec nad jakims oryginalnym sposobem "obrony" a takowego na pewno jest trudniej przejsc nawet jesli jest prosty niz to co mozna widziec w sieci i kazdy wie jak dziala.
Orzeszekk
Cytat(marcio @ 8.03.2012, 20:16:05 ) *
Nie przesadzaj ze x godzin napisanie captchy do bedzie gora 1-2h.
Tak ogolnie rzecz biorac jesli nie jest to warte zachodu to ja stoje na moim i mowie ze nie warto az tak kombinowac jesli naprawde nie jest to potrzebne.

Jak ktos chce na stronie uzyc captchy ktorej napisanie zajelo mu 1-2 h to niech w ogole nie uzywa jej, bo tylko utrudni zycie uzytkownikom.

Jak czasem spotykam na roznych portalach glupie wynalazki ich twórców np captcha która jest kompletnie nieczytelna a odswieza sie tylko i wylacznie wraz z wyczyszczonym formularzem to mnie szlag trafia. Autor mial tylko kilka godzin na napisanie swojej captchy i nie mial czasu na robienie takich "bzdur" jak przycisk odswiez jesli zadanie captchy jest nieczytelne.
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-2024 Invision Power Services, Inc.