Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][inne][JavaScript]Link aktywacyjny
Niktoś
post 7.07.2012, 17:18:28
Post #1





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Witam czy jest możliwe wychwycenie ip/nazwy domeny skąd nastąpiło kliknięcię w link aktywacyjny?
Np.Ktoś wchodzi na swoją pocztę na www.gmail.com i klika w link aktywacyjny.I teraz mam wątpliwości,czy gmail lub inny serwer pocztowy otwierając link w nowym oknie wysyła żądanie?Jeśli tak to chyba da rady byłoby wychwycić skąd nastąpiło kliknięcie.

Ten post edytował Niktoś 7.07.2012, 17:23:52
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 21)
SmokAnalog
post 7.07.2012, 17:50:01
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Poczytaj o $_SERVER['HTTP_REFERER'].
Go to the top of the page
+Quote Post
Niktoś
post 7.07.2012, 21:51:16
Post #3





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Wiem,że takie coś jest lecz czy wychwycone ip będzie klienta czy domeny z której nastąpiło kliknięcie?
Go to the top of the page
+Quote Post
b4rt3kk
post 7.07.2012, 22:01:36
Post #4





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


To nie wychwytuje IP tylko bezpośredni adres z jakiego ktoś wszedł na stronę. Do IP służy co innego, leczy również z tablicy $_SERVER. Czyli jeśli ktoś wejdzie na stronę Twojego skryptu aktywacyjnego bezpośrednio z maila to $_SERVER['HTTP_REFERER'] zwróci przykładowo: http://gmail.com?dasdas=eqwewqeqq&dasdsa=eqwewq

Ten post edytował b4rt3kk 7.07.2012, 22:03:04


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
Niktoś
post 7.07.2012, 22:03:13
Post #5





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Dzięki właśnie o taką odpowiedź mi chodziło.
Można teraz filtrować osoby, które bezpośrednio klikneły w link aktywacyjny bezpośrednio z linku na serwerze pocztowym ,a intruzów, którzy kombinują z url'em.
Chciałem założyć taką filtrację, ale zanim zacznę kombinować to wolałem się upewnić.

Ten post edytował Niktoś 7.07.2012, 22:07:56
Go to the top of the page
+Quote Post
markonix
post 7.07.2012, 22:29:54
Post #6





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Też mi zabezpieczanie.

A jak korzystam z Outlook czy Thunderbird?


--------------------
Go to the top of the page
+Quote Post
b4rt3kk
post 7.07.2012, 22:35:37
Post #7





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Hmm, zależy jak wygląda Twój link aktywacyjny, bo jeśli jest to coś w stylu:
link.php?user=adam_malysz
gdzie adam_malysz to nazwa użytkownika i to wystarczy do aktywacji to rzeczywiście to kiepski pomysł. Generuj jakiś losowy klucz, który zostanie przypisany do konta użytkownika, który będzie mógł poznać wchodząc tylko na maila i nawet jeśli wpisze go w adres przeglądarki to właśnie o to chodzi, bo czasem link może nie działać.

Możesz dodatkowo sprawdzać z jakiego IP się zarejestrował i z jakiego aktywuje, ale nie polecam.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
Mephistofeles
post 7.07.2012, 22:47:41
Post #8





Grupa: Zarejestrowani
Postów: 1 182
Pomógł: 115
Dołączył: 4.03.2009
Skąd: Myszków

Ostrzeżenie: (0%)
-----


Cytat(Niktoś @ 7.07.2012, 23:03:13 ) *
Dzięki właśnie o taką odpowiedź mi chodziło.
Można teraz filtrować osoby, które bezpośrednio klikneły w link aktywacyjny bezpośrednio z linku na serwerze pocztowym ,a intruzów, którzy kombinują z url'em.
Chciałem założyć taką filtrację, ale zanim zacznę kombinować to wolałem się upewnić.

Ci intruzy, którzy kombinują z urlem to po prostu ludzie, którym nie wyświetlił się prawidłowo działający link. Niby dlaczego w każdym mailu aktywacyjnym jest wzmianka "lub skopiuj poniższy adres..."? Zły pomysł z tym filtrowaniem.
Go to the top of the page
+Quote Post
Niktoś
post 7.07.2012, 22:49:48
Post #9





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


A jak korzystam z Outlook czy Thunderbird?
No fakt nie pomyślałem.Ale dla takich osób pozostanie ręczne wpisanie danych.Jeszcze pomyslę.
Cytat
Hmm, zależy jak wygląda Twój link aktywacyjny, bo jeśli jest to coś w stylu:
link.php?user=adam_malysz

Jawnie to robić, aż taki tępy nie jestem-jakoś realizują linki aktywacyjne -na tym forum także-więc nie koniecznie to musi być sposób niebezpieczny.
Teraz pomyślałem -żadnej filtracji -tylko dwa dodatkowe pola weryfikujące dane, potem proces autoryzacji.

Ten post edytował Niktoś 7.07.2012, 22:52:52
Go to the top of the page
+Quote Post
b4rt3kk
post 7.07.2012, 23:15:42
Post #10





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


W miarę prosta metoda:
1. tworzysz losowy klucz, hashujesz go
  1. $key = md5(rand(10000,999999)); // oczywiscie tylko przyklad

2. przypisujesz klucz userowi w bazie danych, wysylasz link aktywacyjny na maila
  1. $link = 'aktywuj.php?user='.$user.'&key='.$key;

3. sprawdzasz czy klucz pasuje do usera, jesli tak, konto aktywowane
  1. $user = $_GET['user'];
  2. $key = $_GET['key'];
  3. $query = "SELECT COUNT(id) FROM users WHERE user='$user' AND key='$key'";


Ten post edytował b4rt3kk 7.07.2012, 23:20:03


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
Niktoś
post 7.07.2012, 23:33:10
Post #11





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Dzięki,zrobię to na podobny sposób-jednak będzie to troszeczkę bardziej restrykcyjne snitch.gif
Go to the top of the page
+Quote Post
markonix
post 8.07.2012, 11:04:16
Post #12





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Nie prościej md5 z nicku + jakiś klucz zamiast zaśmiecać mysql?
Klucz i tak zapisany wyłącznie w FTP więc przyjmując, że nikt do FTP nie ma dostępu jest to równie skuteczne.
Gdyby ktoś jednak włamał się na FTP to by go ten klucz i tak by go mało obchodził.

Edit:
Albo md5(username + klucz + ID usera).

Ten post edytował markonix 8.07.2012, 11:05:42


--------------------
Go to the top of the page
+Quote Post
redeemer
post 8.07.2012, 11:10:25
Post #13





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Cytat(markonix @ 8.07.2012, 12:04:16 ) *
Klucz i tak zapisany wyłącznie w FTP więc przyjmując, że nikt do FTP nie ma dostępu jest to równie skuteczne.
Gdyby ktoś jednak włamał się na FTP to by go ten klucz i tak by go mało obchodził.
Gwoli ścisłości FTP to protokół. Pliki zapisywane są na dysku, a FTP to jedna z możliwości (zresztą mało bezpieczna, bo hasło przesyłane jest jawnie) zdalnego dostępu do nich.


--------------------
Go to the top of the page
+Quote Post
markonix
post 8.07.2012, 11:40:44
Post #14





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Przyznaje. Skrót myślowy.


--------------------
Go to the top of the page
+Quote Post
Niktoś
post 8.07.2012, 13:08:23
Post #15





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
Nie prościej md5 z nicku + jakiś klucz zamiast zaśmiecać mysql?

Właśnie będzie tak jak mówisz-dane w url będą kodowane i dekodowane po unikalnym dla każdego użytkownika kluczu.Zero zapisu do bazy i dodatkowo weryfikowane przez dwa dodane pola textowe. Po praidłowej weryfikacji będzie autoryzacja i przekierowanie na całkiem inną stronę, która dla nikogo nie będzie dostępna bez procesu autoryzacji.

Ten post edytował Niktoś 8.07.2012, 13:10:44
Go to the top of the page
+Quote Post
markonix
post 8.07.2012, 14:03:12
Post #16





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Jak coś jest dekodowane to to nie jest bezpieczne.


--------------------
Go to the top of the page
+Quote Post
Niktoś
post 8.07.2012, 15:19:26
Post #17





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
Jak coś jest dekodowane to to nie jest bezpieczne.

A powiedz mi dlaczego?Jakieś argumenty?
Go to the top of the page
+Quote Post
markonix
post 8.07.2012, 15:21:49
Post #18





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


A jaki jest argument aby cokolwiek dekodować?
Przy logowaniu dekodujesz hasła czy porównujesz hashe?


--------------------
Go to the top of the page
+Quote Post
Niktoś
post 8.07.2012, 15:49:04
Post #19





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
Przy logowaniu dekodujesz hasła czy porównujesz hashe?

Porównujesz hashe,ale hash zapisujesz także w bazie danych.Ma to na celu niejawne przechowywanie danych w tym przypadku hasła w bazie danych.
Ma to na celu zwiększenie bezpieczeństwa bazy danych i ochrony klienta z poziomu bazy danych.W razie wykradnięcia danych z bazy,hasło wciąż pozostaje bezpieczne.
Dekodowanie danych moim zdaniem jest tak samo bezpieczne jak generowanie hashy.Żeby odkodować dane musisz znać 1.algorytm kodujący
2.klucz kodujący
3.dane które tym kluczem chcesz odkodować.

Więc jak widzisz zadanie aby cos tkiego zrobić nie należy do najłatwiejszych.

Próbowałeś łamać zabezpieczenia kodowanych archiwów rar?Tam przeważnie jest używany algorytm AES ,a i tak nie udało mi się nigdy złamać takich pliczków.Najwidoczniej słaby ze mnie haćkor.

Ten post edytował Niktoś 8.07.2012, 15:50:30
Go to the top of the page
+Quote Post
markonix
post 8.07.2012, 16:01:49
Post #20





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Sprawdzasz ID usera, który aktywujesz przy okazji sprawdzając czy user w ogóle istnieje.
Generujesz hash (user + id + stała) i porównujesz z tym w linku, jeżeli ok aktywujesz (znasz już ID).

Nie widzę tu sensu dekodowania jakichś danych z linku choćby dlatego, że jak ktoś by poznał klucz to może zrobić więcej szkód.
Poza tym generowanie hasha wg mnie jest znacznie szybsze, aniżeli rozkodowywanie stringów (na chłopski rozum).


--------------------
Go to the top of the page
+Quote Post
Niktoś
post 8.07.2012, 16:14:59
Post #21





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Strona o niższym priorytecie prowadząca do systemu komentarzy.Korzystać będą z niej niezarejestrowani userzy.Wprowadzanie do bazy danych dodatkowego pola z hashem dla usera,gdzie dane jego będą przechowywane przez pewien okres wydaje mi się nieoptymalne.W przypadku kodowania/dekodowania nie muszę tworzyć dodatkowej kolumny dla hasha w bazie danych.

U mnie będzie to tak wyglądać:
1.Kodowanie danych za pomocą unikalnych kluczy i wysłanie na email w linku aktywacyjnym.
2.W momencie klknięci w link przez usera dekodowanie stringa i weryfikacja o dwa dodatkowe pola tekstowe.
3.Jeśli dane są zgodne ,autoryzacja i przekierowanie na zabezpieczoną stronę.

Myślę,że sposób dobry na stronę o niższym priorytecie(stronę z komentarzami).Wydaje mi się dość bezpieczne.

Ten post edytował Niktoś 8.07.2012, 16:15:34
Go to the top of the page
+Quote Post
markonix
post 8.07.2012, 19:28:39
Post #22





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Ale ja nic nie mówiłem o zapisywaniu hasha w bazie.
Hash jest w linku.


--------------------
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 00:07