![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 139 Pomógł: 3 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam pytanie odnośnie bezpieczeństwa sesji w PHP. Czy użytkownik może je w jakiś sposób przesłać lub zedytować ich zawartość? Czy jeśli w zapytaniach mySQL korzystam z wartości sesji to muszę je filtrować?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Podstawowa zasada - filtruj wszystko co pochodzi od użyszkodnika, kropka
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 139 Pomógł: 3 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
No tak ale czy sesje użytkownik może jakoś zedytować?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Sesje (w domyślnych ustawieniach) zapisywane są w formie plików na serwerze. Uzytkownik WWW nie może więc ich w żaden sposób edytować. Aby edytować dane sesji trzeba by było użyć jakiejś dziury w twojej aplikacji, która pozwalała by na zapisanie do sesji pod jakąś określoną zmienną czegokolwiek, lub mieć dostęp do plików serwera.
Mechanizm sesji z założenia jest bezpieczny o tyle o ile zabezpieczony jest dostęp do samego serwera. Może myli Ci się to z COOKIES, które (ab)user może dowolnie modyfikować. Sesja jest bezpieczniejszym mechanizmem. Rób tak jak powiedział przedmówca bo mądrze mówi - cokolwiek nie przychodzi od (ab)usera musi być zwalidowane, przefiltrowane i dopiero gdzieś można to wrzucić. (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tylko żebyś źle nie zrozumiał. Sesje w swoim stanie, tak wszystko inne user nie będzie w stanie zmienić. Natomiast sesje te trzeba jakoś przenosić pomiędzy requestami (cookies, local storage, url) a wszystko co jest po stronie użytkownika ten może zmodyfikować. Kojarzę że był uż dosć solidny wątek gdzie nawet sam pisałem. Poszukaj na forum.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
No tak ale czy sesje użytkownik może jakoś zedytować? Owszem np. poprzez atak typu session poisoning, na który jednak są narażone strony występujące na współdzielonym hostingu (przy złych zabezpieczeniach). O bezpieczeństwie sesji możesz poczytać tutaj: http://www.beldzio.com/bezpieczenstwo-mechanizmu-sesji |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
A czy Wy przypadkiem nie przesadzacie? Temat wałkowany niejednokrotnie, a nawet info z przyklejonych się znajdzie.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Tak mniej więcej wyglądał kawałek kodu z jakiegoś open sourcowego cmsa
Jak widać nie trzeba edytować sesji aby nabroić (IMG:style_emoticons/default/smile.gif) @UP Nie przesadzam... nie jestem ogrodnikiem Ten post edytował CuteOne 21.01.2013, 13:36:25 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 04:31 |