![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 2 Dołączył: 25.03.2009 Skąd: Pionki Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam problem. Otóż zrobiłem głosowanie na zdjęcia za pomocą kliknięcia w przycisk, przycisk ten przekierowuje na kolejną podstronę gdzie jest weryfikowana poprawność oddania głosu. Tzn. na stronie A, generuję kod do linku na oddanie głosu wygląda on mniej więcej tak:
Link do oddania głosu wygląda tak: b.php?act=vote&id=[ID]&h1=[hash1]&h2=[hash2] Kod sprawdzający to wygląda mniej więcej tak:
Czy da się to jakoś oszukać? Jakie Wy macie próby na nieuczciwych graczy? Dziękuję i pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
post numer #2
Poza tym zdefiniuj sobie 1 salt, koduj przy pomocy md5 - nie do rozkodowania. DO linku dodaj znacznik czasowy zakodowany base64_encode i to z niego korzystaj. Ten sam znacznik czasowy może być użyty tylko raz - dodawaj go do bazy żeby 2 razy nie użyto lub sprawdzaj jak długi czas upłyną - większy jak x sek. to pewnie oszustwo. Możesz też nadawać unikalny ID dla każdego głosującego i go też wrzucić do bazy i przypisać znacznikowi. Jest wiele możliwości natomiast twoje rozwiązanie nie sprawdzi się dla każdego twojego użytkownika. Ten post edytował buliq 3.08.2011, 11:18:14 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 2 Dołączył: 25.03.2009 Skąd: Pionki Ostrzeżenie: (0%) ![]() ![]() |
A dlaczego nie sprawdzi się dla każdego użytkownika?
A co jakbym dał znacznik czasowy w zmiennej sesji? Dodał go do hashu i potem sprawdził czy wygenerowany hash jest zgodny? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
na dwóch różnych serwerach? znacznik sesji będzie różny.
Ty chyba byłeś zbyt leniwy aby spojrzeć na ten link co podałem? Nie sprawdzi się bo nie każdy user agent przesyła wartość http_referer czyli dla tych co nie przesyłają będzie sypał cały czas próba oszustwa. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 2 Dołączył: 25.03.2009 Skąd: Pionki Ostrzeżenie: (0%) ![]() ![]() |
Jak to wszystko jest na jednym serwerze, to jest jeden serwis....
Chodzi mi o coś takiego: http://twoja_strona.pl/a.php:
b.php?act=vote&id=[ID]&h1=[hash1]&h2=[hash2] http://twoja_strona.pl/b.php:
[EDIT] O to właśnie chodzi aby http_referer był adresem strony a.php?id=[ID], zasady są takie, że trzeba wejść na stronę ze zdjęciem i dopiero na niej kliknąć w link "Oddaję głos" a nie że bezpośrednio skopiuję sobie link do oddawania głosu i porozsyłam znajomym i każdy zagłosuje... Ten post edytował pionas 3.08.2011, 12:09:05 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Poza tym zdefiniuj sobie 1 salt, koduj przy pomocy md5 - nie do rozkodowania. Funkcje sha1 czy md5 generują hash, więc podaj jakiś konkretniejszy argument dlaczego ma używać md5 (IMG:style_emoticons/default/wink.gif) Co do rozkodowywania - jak można rozkodowywać coś co nie jest zakodowane? Oba z algorytmów tworzą skróty, nic nie kodują. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
@up złapałeś mnie za słówko (IMG:style_emoticons/default/smile.gif) dlaczego md5? nie słyszałem o zastrzeżeniach odnośnie tego algorytmu tymczasem sha1 ponoć jest do złamania. Zdaję sobie sprawę że w przypadku ankiet nie ma to znaczenia ponieważ szkoda zachodu ale lepiej dmuchać na zimne ? (IMG:style_emoticons/default/smile.gif)
w temacie: to po co ci dwa skrypty ? nie można tego w jednym rozwiązać? Skoro już muszą być dwa to session id w zupełności wystarczy. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 2 Dołączył: 25.03.2009 Skąd: Pionki Ostrzeżenie: (0%) ![]() ![]() |
Przecież to jest jeden skrypt...
Jeden plik służy do wyświetlania obrazka i generowania linku do zagłosowania, a drugi plik weryfikuje poprawność linku i czy osoba która kliknęła w link to osoba która faktycznie zobaczyła zdjęcie i sama z siebie oddała na nie głos... |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
@up złapałeś mnie za słówko (IMG:style_emoticons/default/smile.gif) dlaczego md5? nie słyszałem o zastrzeżeniach odnośnie tego algorytmu tymczasem sha1 ponoć jest do złamania Oba algorytmy jak wspomniałem tworzą skróty, nie chce mi się teraz szukać który ma większe prawdopodobieństwo kolizji, jednak do ankiet może używać czego chce właściwie. Poza tym "łamanie" tych algorytmów tak naprawdę to odszukanie w tęczowych tablicach odpowiedniego odpowiednika (ciągu), który wygeneruje identyczny hash. Wiadomo, jeżeli chodzi o hasła to zwykle wystarczy metoda słownikowa, bo ludzie dają głupie hasła typu: password, haslo, imie, etc. Ci bardziej łebscy i tak polegną na prostym ataku BF, a tych ostatnich z silnymi hasłami (po wykradnięciu hasha) najłatwiej załatwić tęczowymi tablicami. (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 18:20 |