Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sesja, Bezpieczeństwo danych w sesji.
carbolymer
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 12
Dołączył: 27.01.2007
Skąd: north              Poziom: 158                     Tytuł: Miszcz

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


Ciekawi mnie kwestia bezpieczeństwa danych w sesji. Czy jak zapiszę w sesji dane rodzaju:
  1. <?php
  2. $_SESSION['login'] = 'zenek';
  3. $_SESSION['haslo'] = 'a6e5v3z8erg4';
  4. ?>

Mogą one zostać odczytane?
Jeżeli tak, czy dostanie się do danych przez osobę zewnętrzną jest łatwe?
Go to the top of the page
+Quote Post
babejsza
post
Post #2





Grupa: Zarejestrowani
Postów: 407
Pomógł: 1
Dołączył: 4.03.2003
Skąd: warszawa

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


Ogólnie jest tak, że niemożliwe to jest odwrócić hełm na drugą stronę czy otworzyć parasol w ...

Jeżeli dane mają być bezpieczne to najlepiej je zakodować.

Dostanie się do danych zapisanych w sesji zależy od tego jak dobrze zabezpieczony jest serwer.
Go to the top of the page
+Quote Post
pbnan
post
Post #3





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 27.03.2007
Skąd: Osiek almost City ;-D

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


Nie jestem pewien tego, co piszę, więc jakbym zrobił jakąś pomyłkę, to mi wybaczcie.
---
Sesja i jej zawartość jest przetrzymywana po stronie serwera. Żeby się do tych danych dostać, potrzebujesz session id. Jest on przetrzymywany:
a ) w cookie,
b ) poprzez adres URL przekazuje się go.
Gdy poprawny SSID zostanie przekazany do witryny, ta udostępni dane. Zatem najważniejsze jest nie dopuścić do przechwycenia cookie (bo to się najczęściej stosuje przy sesjach). A przechwycić można poprzez np. XSS, dlatego trzeba uważać nieźle na bezpieczeństwo swoich aplikacji.

Ten post edytował pbnan 7.05.2007, 16:19:19
Go to the top of the page
+Quote Post
carbolymer
post
Post #4





Grupa: Zarejestrowani
Postów: 102
Pomógł: 12
Dołączył: 27.01.2007
Skąd: north              Poziom: 158                     Tytuł: Miszcz

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


a takie zastosowanie jest bezpieczne (przetwarzane podczas każdego przeładowania strony): (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
  1. <?php
  2. function realIP()
  3. {
  4. if ($_SERVER['HTTP_X_FORWARDED_FOR'])
  5. return $_SERVER['HTTP_X_FORWARDED_FOR'];
  6. else
  7. return $_SERVER['REMOTE_ADDR'];
  8. }
  9.  
  10. if($_SESSION['sip'] != realIP())
  11. {
  12. }
  13. ?>

w $_SESSION['sip'] przechowuję IP użytkownika (zapisywane podczas logowania).

Ten post edytował carbolymer 7.05.2007, 19:16:52
Go to the top of the page
+Quote Post
domis86
post
Post #5





Grupa: Zarejestrowani
Postów: 255
Pomógł: 5
Dołączył: 20.03.2007
Skąd: Kraków

Ostrzeżenie: (30%)
XX---


Cytat(carbolymer @ 7.05.2007, 17:37:22 ) *
a takie zastosowanie jest bezpieczne (przetwarzane podczas każdego przeładowania strony): (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
  1. <?php
  2. function realIP()
  3. {
  4. if ($_SERVER['HTTP_X_FORWARDED_FOR'])
  5. $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
  6. else
  7. $ip = $_SERVER['REMOTE_ADDR'];
  8. }
  9.  
  10. if($_SESSION['sip'] != realIP())
  11. {
  12. }
  13. ?>

w $_SESSION['sip'] przechowuję IP użytkownika (zapisywane podczas logowania).


no niby tak, ale co jezeli ktos ma zmienne ip, i zmienia mu sie ono czesto?

Pozatym przejęcie ciasteczka nie jest takie proste. Opłaca się zabezpieczać przed jeżeli robisz jakąś poważną aplikacje.

Ten post edytował domis86 7.05.2007, 16:42:16
Go to the top of the page
+Quote Post
pbnan
post
Post #6





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 27.03.2007
Skąd: Osiek almost City ;-D

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


Nie jest bezpieczne. Bo nie zadziała.
1. Nie zwracasz nic w realIP();
2. nie masz session_start();
Go to the top of the page
+Quote Post
.radex
post
Post #7





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


Hmmmm... A powiecie mi może dlaczego ja przy moich aplications nigdy nie miałem żadnego ciacha?
Go to the top of the page
+Quote Post
pbnan
post
Post #8





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 27.03.2007
Skąd: Osiek almost City ;-D

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


Bo może miałeś przekazywanie przez URL, o czym pisałem wyżej? Może nie korzystałeś z sesji? Może czegoś ja nie wiem (bardzo możliwe)? Jak widzisz, dużo możliwości, radex_p. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
.radex
post
Post #9





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


hmm.... zawsze standardowa procedurka: session_start();
i jak ustawiam nowe(lub modyfikuje) sesje to:
$_SESSION['nazwa'] = 'wartosc';

i w zasadzie chyba to wszystko co mam do powiedzenia (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
carbolymer
post
Post #10





Grupa: Zarejestrowani
Postów: 102
Pomógł: 12
Dołączył: 27.01.2007
Skąd: north              Poziom: 158                     Tytuł: Miszcz

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


@domis86
ip się zmienia przy kazdym połączeniu do internetu, a mi się rozchodzi o sesję - dane przetrzymywane tylko podczas jednej wizyty na strone

@pbnan
to ejst fragment kodu, odpowiedzialny za bezpieczeństwo zmodyfikowany na potrzebę zamieszczenia na forum, mogła mi się zdażyć pomyłka - session start() i session_register() jest jakieś 500 linijek wyżej.

Mi się rozchodzi o bezpieczeństwo stosowania takich rozwiązań: przechowywania nazw użytkownika i hasła w sesji.
Go to the top of the page
+Quote Post
domis86
post
Post #11





Grupa: Zarejestrowani
Postów: 255
Pomógł: 5
Dołączył: 20.03.2007
Skąd: Kraków

Ostrzeżenie: (30%)
XX---


po co haslo przechowywac ? wsytarczy samo id, czy nazwa


Hmm, jesli myslisz ze sesja nie jest bezpieczna bo mozna ukrasc cistko to tak samo ip nie jest 100% bezpieczne bo ktos moze zespoofowac. Tak mozna zabezpieczać w nieskonczonosc.
Go to the top of the page
+Quote Post
sobstel
post
Post #12





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

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


na serwerach współdzielonych każdy posiadajacy konto na tym serwerze może odczytać sesje ponieważ zazwyczaj przechowywane są w katalogu /tmp, z ktorego kazdy moze czytac. polecam zmienienie tego katalogu przez dyrektywe session.save_path lub uzyc wlasnego handlera sesji (session_set_save_handler).

@radex_p, sesje moga byc przekazywane przez ciacho lub przez url. jesli u ciebie nie widzisz doklejonego w adresach id sesji tzn. ze jest przekazywane przez cookie - jest to robione automatycznie i pewnie nawet nie zdajesz sobie z tego sprawy.

@carbolymer, hasła w żadnym razie nie powinieneś przechowywać w sesji bo zupełnie nie ma to sensu i przed niczym nie zabezpiecza, wręcz przeciwnie.

Cytat(domis86)
Pozatym przejęcie ciasteczka nie jest takie proste. Opłaca się zabezpieczać przed jeżeli robisz jakąś poważną aplikacje.


wtedy tylko ssl, tylko to moze uchronic przed sniffingiem. a z podstawowych zasad to nie uzywac urlow do przekazywania identyfikatora.

Ten post edytował sopel 7.05.2007, 19:58:20
Go to the top of the page
+Quote Post
.radex
post
Post #13





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


Cytat
@radex_p, sesje moga byc przekazywane przez ciacho lub przez url. jesli u ciebie nie widzisz doklejonego w adresach id sesji tzn. ze jest przekazywane przez cookie - jest to robione automatycznie i pewnie nawet nie zdajesz sobie z tego sprawy.


Przez ciacho w takim razie, ale w $users_root$/cookies nigdy nie widziałem pliku od localhost:P
Go to the top of the page
+Quote Post
mild
post
Post #14





Grupa: Zarejestrowani
Postów: 78
Pomógł: 0
Dołączył: 22.04.2007
Skąd: Wrocław

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


Zainstaluj sobie wtyke do przegladarki (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Mam jedno pytanie na temat id'a sesji.
Jak zmieniec czy jest przekazywany przez get czy cookie? W php.ini?
Go to the top of the page
+Quote Post
bełdzio
post
Post #15





Grupa: Zarejestrowani
Postów: 690
Pomógł: 81
Dołączył: 6.04.2005
Skąd: Szczecin

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


session.use_only_cookies
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 16.09.2025 - 19:33