Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Prosty token
Forum PHP.pl > Forum > Przedszkole
ArthaS_Delano
Witam smile.gif

Zrobilem sobie najprostszy mozliwy token.. Robie sobie losowanie liczby od 1000 do 9999 i zapisuje do zmiennej.. Uzytkownik ma ten kod ze zmiennej przepisac do formularza.. I wtedy porownuje czy obie liczby sa takie same.. Mam tylko pytanie czy taki banalny token jest bezpieczny.. ? Czy robot moze jakos to ominac, odczytac co wylosowalem lub cos takiego ? Nie znam sie na tego typu zabezpieczeniach dlatego pytam tutaj a chcialem ominac korzystanie z gotowych tokenow z netu.. Dla mnie wydaje to sie bezpieczne ale moze ktos mi wytknie czy cos moze jednak pojsc nie tak ?

Z gory dziekuje za pomoc smile.gif

PS. Czy token jest na tyle wystarczajacym zabezpieczeniem zeby odpuscic sobie aktywacje email ?
qrees
Cytat(ArthaS_Delano @ 18.02.2008, 22:47:58 ) *
Witam smile.gif

Zrobilem sobie najprostszy mozliwy token.. Robie sobie losowanie liczby od 1000 do 9999 i zapisuje do zmiennej.. Uzytkownik ma ten kod ze zmiennej przepisac do formularza.. I wtedy porownuje czy obie liczby sa takie same.. Mam tylko pytanie czy taki banalny token jest bezpieczny.. ? Czy robot moze jakos to ominac, odczytac co wylosowalem lub cos takiego ? Nie znam sie na tego typu zabezpieczeniach dlatego pytam tutaj a chcialem ominac korzystanie z gotowych tokenow z netu.. Dla mnie wydaje to sie bezpieczne ale moze ktos mi wytknie czy cos moze jednak pojsc nie tak ?

Z gory dziekuje za pomoc smile.gif

PS. Czy token jest na tyle wystarczajacym zabezpieczeniem zeby odpuscic sobie aktywacje email ?

No jeżeli nigdzie nie pokazujesz tego tokena, to robot go nie odczyta, bo niby jak? Problem w tym, że człowiek też nie. Jeżeli natomiast go gdzieś na stronie pokazujesz, to kwestia jedynie jak trudne będzie dla robota odczytanie tego tokena. Powiedz coś więcej... Skąd użytkownik bierze ten token?
ArthaS_Delano
Kod pokazuje sie jako tekst:

Przepisz kod : 9780

tuz nad polem formularza gdzie ma byc wpisany, wyswietlam poprostu wylosowana zmienna..
kszychu
Takie zabezpieczenie to żadne zabezpieczenie. Robot sparsuje stronę i już ma kod.
ArthaS_Delano
A jesli bym dal z 5 obrazkow z 5 roznymi kodami robot przeciez nie odczyta z obrazkow ? i potem dam sprawdzenie jesli wylosowalo obrazek nr 3 z liczba 25 to czy liczba 25 rowna sie liczbie wpisanej przez uzytkownika.. Takie cos by przeszlo ? czy tez da rade odczytac ?
kszychu
Kolego, google nie gryzą. Poszukaj sobie informacji o tokenach i nie wymyślaj na nowo koła.
A na marginesie: owszem, roboty poradzą sobie z obrazkami.
potreb
Zrób np taki coś: Wpisz sume: 4+6 do inputa, bedziesz sobie losowal np liczby ktore dodac. Prosty sposob bez tokena
qrees
Cytat(ArthaS_Delano @ 18.02.2008, 23:04:13 ) *
A jesli bym dal z 5 obrazkow z 5 roznymi kodami robot przeciez nie odczyta z obrazkow ? i potem dam sprawdzenie jesli wylosowalo obrazek nr 3 z liczba 25 to czy liczba 25 rowna sie liczbie wpisanej przez uzytkownika.. Takie cos by przeszlo ? czy tez da rade odczytac ?


Wniosek z tego, że chcesz mieć jakąś określoną ilość obrazków i na każdym jakąś liczbę. W takiej sytuacji robot (/człowiiek) musi po prostu przejrzeć wszystkie obrazki i poznać te liczby, a potem już automatycznie wpisywać odpowiedzi. Najlepiej rób dynamiczne obrazki, za pomocą biblioteki GD.
ArthaS_Delano
Znalazlem w miare przystepny token

http://webmade.org/porady/token-generator-...azowych-php.php

Mam juz tylko pytanie czy po zastosowaniu tokena mozna odpuscic sobie aktywacje email czy jednak jest ona konieczna do zabezpieczenia ? Zalezy mi na jak najlepszych zabezpieczeniach dlatego tak mecze ten temat tongue.gif

Dziekuje tym ktorzy juz mi pomogli smile.gif
potreb
Aktywacja email, to tylko potwierdzenie adresu email, funkcja przydatna, aczkolwiek niekonieczna, skoro tak ci zależy na tokenie to przy okazji powinno ci zależeć na kodzie żeby nie był dziurawy.
ArthaS_Delano
Nie wiem czy dobrze Cie zrozumialem jesli chodzi o Twoj pomysl na token..

Liczby do zsumowania ustalasz z gory czy one sa losowane ? I porownujesz je zapewne rowniez do dzialania a nie do jego wyniku tak ? Nie wiem czy boty umieja liczyc tongue.gif Czy moze losujesz obie liczby i je wtedy kazesz dodac ?
potreb
Masz np tak:
  1. <?php
  2. $s = rand(0, 5);
  3. $d = rand(0, 5);
  4. $a = $s + $d;
  5. $_SESSION['token'] = $a;
  6. echo "Dodaj $s plus $d";
  7. ?>


Pozniej spradzasz czy sesja token rowna sie wpisana wartos i jest.
kszychu
  1. <?php
  2. $linia = "Dodaj 3 plus 2";
  3. $tmp = explode(' ', $linia);
  4.  
  5. if($tmp[2] == 'plus') $token = $tmp[1] + $tmp[3];
  6. elseif($tmp[2] == 'minus') $token = $tmp[1] - $tmp[3];
  7. ?>

Tak na szybko złamałem Twój token @potreb ;-)
phpion
@potreb:
Twoje rozwiązanie jest tak proste co nieskuteczne. Czym się ono różni od "Wpisz kod: ABC123"? Wystarczy pobrać zawartość strony, odpowiednie wyrażenie regularne i token staje się kompletnie zbędny.

Jedyne skuteczne rozwiązanie to generowanie obrazka z kodem. Tło obrazka powinno zawierać różne bazgroły (proste, krzywe, kropki itd), natomiast sama czcionka również nie powinna być standardowa. Dodatkowo należy pamiętać o zapamiętywaniu tokena w sesji, a nie w polu hidden winksmiley.jpg

// EDIT:
hehehe właśnie, ~kszychu okazał się bardziej konkretny smile.gif
potreb
Jeszcze nie spotkałem się z botem który nauczył się liczyć, dlatego to stosuje. I nie myślę żeby ktoś specjalnie robił bota pod tym kątem, chyba że krzychu winksmiley.jpg
nowotny
Cytat(potreb @ 19.02.2008, 00:25:07 ) *
Jeszcze nie spotkałem się z botem który nauczył się liczyć, dlatego to stosuje. I nie myślę żeby ktoś specjalnie robił bota pod tym kątem, chyba że krzychu winksmiley.jpg

Moim zdaniem to tylko kwestia czasu... przecież jak było...? wymyślono obrazkowe CAPTCHA na boty... no to napisano lepsze boty które potrafią złamać i obrazek... Dlatego moim zdaniem należy postawić na własne rozwiązania a nie korzystać z gotowych bibliotek które już dawno zostały dodane do botów...

Nie znam się ale boty chyba parsują tylko kod strony... czyli np. dynamiczne dodanie na stronę kodu przy pomocy Javascript, który nie będzie bezpośrednio widoczny było by jakimś utrudnieniem...
vokiel
Moim zdaniem takie działanie (a przynajmniej tekst co należy zrobić) powinien być w miarę losowy. Bo jeśli na stronie masz za każdym razem "Dodaj x do y" to nie problem cos takiego złamać. Utrudnieniem byłoby wpisanie jakiegoś w miarę losowego tekstu, w który byłoby wplecione zadanie. Czyli np: "to jest jakiś losowy tekst, zignoruj go, bot go nie odczyta, bo nie wie gdzie jest prawdziwe dzialanie, a jest ono tutaj: 4 musisz dodac do 6 i wpisac na dole wynik"
Albo zadania w stylu: "Co to jest pływa i kaczka się nazywa?"
kuxma
A może napisalibyście jakiś token "trudny" do złamania i opisali co do czego??
H4eX
Cytat(kuxma @ 16.07.2010, 21:34:29 ) *
A może napisalibyście jakiś token "trudny" do złamania i opisali co do czego??


a może jeszcze frytki do tego?
kapuch
Cytat(H4eX @ 16.07.2010, 21:55:07 ) *
a może jeszcze frytki do tego?

To ja poproszę smile.gif
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.