Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: password_hash w $_SESSION
Forum PHP.pl > Forum > PHP
trzczy
Chodzi mi o przybliżenie tematu security w przypadku danych przechowywanych w $_SESSION.

Otóż spotkałem się z teorią, że warto dokonywać uwierzytelnienia użytkownika (authentication) przy każdym wchodzeniu na każdą podstronę serwisu internetowego. Wtedy niebezpieczeństwo włamania się przez osoby 3-cie maleje.

Rozumiem to tak, że przechowujemy w sesji login i password_hash użytkownika i za każdy wejściem na podstronę go uwierzytelniamy, czyli weryfikujemy password_hash z bazą danych.

I moje pytanie, czy przechowywanie password_hash w $_SESSION nie jest niebezpieczne?

Czytałem, że przechowywanie plain text password, czyli normalnie hasła, w $_SESSION jest zdecydowanie niebezpieczne. Ale czy password_hash nie jest przypadkiem równie wystarczającą daną do wejścia na czyjeś konto i co za tym idzie - wymagającą unicestwienia zaraz po wykorzystaniu?
kapslokk
Sesja jest trzymana na serwerze, więc to co w niej trzymasz tak naprawdę jest niewidoczne dla usera.
Damonsson
A w jaki sposób to Cię niby bardziej zabezpiecza? Na moje tu chodziło o wymaganie loginu i hasła przy każdym przejściu na podstronę, co z punktu widzenia UX jest samobójstwem. Jak ktoś przejmie czyjąś sesję to przecież z całą zawartością $_SESSION, które jest na serwerze jak zauważył kolega wyżej. A trzymanie haseł w $_SESSION jest o tyle niebezpieczne, że jak się coś wysypie i odpowiednio tego nie zabezpieczyłeś, to możesz zobaczyć zawartość tej zmiennej.
viking
Na moje oko to raczej chodziło o regenerację id sesji po każdej odsłonie.
trzczy
Właśnie też mi coś w tym nie grało. Wziąłem to z jakiegoś starego wątku na forumweb.pl sprzed 8 lat, może więc wiekowość tłumaczy takie teorie.

http://www.forumweb.pl/tematy-ogolne/jak-c...15#post248351_0

Aczkolwiek na SO też są takie wypowiedzi, że plain text password never!!! w sesji, ale w domyśle autorzy wypowiedzi jakoś wskazują, że zhaszowany to tak.
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.