[algorytm] Blokada spamu przy wysyłaniu formularza, Prośba o test/ocenę... |
[algorytm] Blokada spamu przy wysyłaniu formularza, Prośba o test/ocenę... |
5.03.2012, 08:43:45
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
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 ) 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 - innymi słowy zabawa dla ciekawych i znudzonych Dziękuję za pomoc, testy i ocenę EDIT: Nie sądzę bym był pierwszym, który wpadł na coś takiego - żeby nie było - ale się z tym nie spotkałem... Ten post edytował Sephirus 5.03.2012, 08:47:41 -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 10:02:37
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) |
W tokenie jest suma kontrolna z sumy tych dwóch podanych liczb? Tzn suma liczb plus pewnie jakaś sól 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..
|
|
|
5.03.2012, 10:11:15
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
To nie jest tak... Jak pisałem to z sumowanie liczb jest dla niepoznaki oczywiście jest sprawdzane... ale nie to jest główne zabezpieczenie
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ę... i właśnie to "coś" chcę przetestować 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" Powiem jeszcze tak: bez punktów 1 i 2 zabezpieczenie nadal by działało -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 11:21:57
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) |
Dobra, to nie wiem co to jest i gdzie to może być czekam kiedy podzielisz się tym "czymś"
|
|
|
5.03.2012, 11:30:43
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Idealnie by było gdyby ktoś zechciał z tym pokombinować 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ń 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ł W celach motywacyjnych dla pierwszej osoby, która to zabezpieczenie złamie czeka równowartość dwóch dobrych PIW! (bezalkoholowych "oczywiście") -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 11:36:14
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) |
Dobra, z racji że podbiłeś stawkę, to będę jeszcze raz strzelać 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
|
|
|
5.03.2012, 11:40:44
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Hmm to o czym mówisz też jest dobre 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 -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 11:46:50
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) |
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
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 |
|
|
5.03.2012, 11:54:33
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
hmm 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
-------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 13:19:12
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) |
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
|
|
|
5.03.2012, 13:22:31
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Jeżeli nikt go nie złamie to wyjawię tylko zainteresowanym (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 Gdzie są Ci chętni do pracy hackerzy gdy ich potrzeba... Anonymous!!! ;P -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 17:47:29
Post
#12
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 42 Dołączył: 27.07.2010 Skąd: Jaworzno Ostrzeżenie: (0%) |
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ąć) ? -------------------- GG: 10972302 :)
|
|
|
5.03.2012, 18:28:55
Post
#13
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
@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. |
|
|
5.03.2012, 18:36:01
Post
#14
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 42 Dołączył: 27.07.2010 Skąd: Jaworzno Ostrzeżenie: (0%) |
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.
-------------------- GG: 10972302 :)
|
|
|
5.03.2012, 18:57:32
Post
#15
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
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 W skrócie - NIE - nie ma to nic wspólnego z przeglądarką -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
5.03.2012, 19:21:03
Post
#16
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 42 Dołączył: 27.07.2010 Skąd: Jaworzno Ostrzeżenie: (0%) |
Nie ma chyba innej możliwości, mógłbyś dać wersje bez działania matematycznego? Tylko samo podanie e-mail?
-------------------- GG: 10972302 :)
|
|
|
6.03.2012, 14:54:24
Post
#17
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Jest bez
I jak xxdrago udało się coś zrobić? Znaleźć o co chodzi? -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
6.03.2012, 15:09:42
Post
#18
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 42 Dołączył: 27.07.2010 Skąd: Jaworzno Ostrzeżenie: (0%) |
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".
-------------------- GG: 10972302 :)
|
|
|
6.03.2012, 15:34:16
Post
#19
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
ok wieczorkiem koło 19 tokena nie będzie (teraz nie mam jak zmienić)
-------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
6.03.2012, 16:39:54
Post
#20
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
@Sephirus: Złamanie zabezpieczenia zajęło mi... około 90 sekund. spam.png - wcale nie rzuca się w oczy.
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ć. Ten post edytował Crozin 6.03.2012, 16:59:37 |
|
|
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 19:36 |