Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Bezpieczeństwo skryptów PHP opratych na sesji
Michael2318
post
Post #1





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

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


Zastanawiam się nad bezpieczeństwem skryptów opartych o php-owskie sesje oraz bazę MySQL. Załóżmy, że przy logowaniu, wyszukuję w bazie czy istnieje user o podanym haśle i nicku. Jeśli istnieje to tworzę sesję. No i właśnie... Do sesji nie powinno się przypisywać żadnych haseł/nicków, ale czy można przypisać ID danego usera? Co jeśli przypiszę sesję tak:

  1. $_SESSION['login'] = $user_id;


gdzie $user_id to np. 1, czyli admin? Czy to jest 100% bezpieczne rozwiązanie? No bo jeśli w jakiś sposób dałoby się zmienić zawartość sesji i ktoś przypisze sobie do swojej sesji 1 to automatycznie jest na koncie admina i robi co chce. Pytanie czy tak się da?

No i druga sprawa - dostęp do Panelu Admina (PA). Czy wystarczy, jeśli do PA będę wpuszczał osoby, które w bazie mają przypisane user_level (pole tinyint(1) default 0) == 1 ? Teoretycznie nikt sobie nie zmieni sam tej wartości bo musiałby mieć dostęp do bazy, a jesli już miałby dostęp do bazy to może wszystko, wiec czy taka alternatywa wytarczy, czy raczej trzeba dorzucić jakieś oddzielne logowania, cuda wianki?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pyro
post
Post #2





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(netmare @ 4.02.2013, 09:52:17 ) *
Po trzecie cała nasza dyskusja zaczęła się od mojej opinii że stwierdzenie NIGDY jest nad wyrost. Sam nigdy nie dopuściłem przekazywania id w sesji, ale potrafię sobie wyobrazić kiedy bez obaw mógłbym na to zezwolić. Skoro robisz audyty bezpieczeństwa to chyba wiesz że złamać da się wszystko, tylko kwestia czy atak nie jest droższy od wartości zdobytej informacji.


Nie wszystko, ale prawda jest niestety taka, że osób nie przestrzegających zasad bezpieczeństwa jest znaczny ogrom.

Cytat(netmare @ 4.02.2013, 09:52:17 ) *
Dlatego myślę że można by powiedzieć zamiast NIGDY, np "staraj się unikać, jeśli nie rozumiesz zagrożeń z tym związanych lub nie ma szczególnych powodów do zezwolenia na to". Bo tak jakiś nowicjusz przeczyta to i zawsze będzie miał w głowie, że tak nie można bo mu stronę shaczą, nie rozumiejąc jak i dlaczego.


No tak... ale czy warto stosować trans_sid tylko dlatego, że można? Jaki byłby w tym sens, skoro domyślnie w PHP jest wyłączone. Nie dość, że trzeba by zmieniać konfigurację, to jeszcze nie ma w tym większego celu. Poza tym wymyśliłeś sobie przykład, gdzie użytkownik nie robi nic na stronie, a wiadomo, że w znacznej większości skryptów opartych na sesjach user coś jednak robi. Dodatkowo:
Cytat(pyro)
Nie jest wyolbrzymione, jednak rzeczywiście mogą mieć miejsce sytuacje, gdzie użycie trans_sid ma sensowne uzasadnienie. Ale to są rzadkie przypadki.


Cytat(netmare)
I to wszystko co miałem do powiedzenia w temacie. O zagrożeniach można by tu było sypnąć autorowi wiele lektur, ale on tylko pytał czy da się zmienić zawartość sesji


No i temat cały czas o tym był.

Cytat(netmare)
(choć warto mieć w świadomości, że są tacy którzy przeprowadzają je nie posiadając stosownych umów :]).


Cytat(pyro)
audyt bezpieczeństwa na umowę


Cytat(netmare)
Podsumowując proponuję zdrowy rozsądek, bo po co wdrażać zebrane do kupy pomysły wszystkich forumowiczów dla strony która dla zalogowanych wyświetla dowcip dnia.
Osoby biorące udział w tej dyskusji pozdrawiam serdecznie.


No tak.. bo rzeczywiście dla strony wyświetlającej dowcip dnia warto tworzyć logowanie.

Cytat(netmare)
(Raczej nie będę kontynuował wypowiadania się w tym wątku bo zrobił się straszny offtop i zbędne bicie piany.)


Może być.
Go to the top of the page
+Quote Post

Posty w temacie
- Michael2318   Bezpieczeństwo skryptów PHP opratych na sesji   2.02.2013, 11:43:54
- - pyro   Cytat(Michael2318 @ 2.02.2013, 11:43...   2.02.2013, 11:57:38
- - Michael2318   Cytat(pyro @ 2.02.2013, 11:57:38 ) A ...   2.02.2013, 12:00:22
- - pyro   CytatDziałanie sesji znam Nie znasz, bo te pytani...   2.02.2013, 12:06:32
- - Michael2318   CytatTo właściwie są pytania o to jak działają ses...   2.02.2013, 12:09:49
- - netmare   Da się zmienić zawartość sesji na współdzielonym s...   2.02.2013, 12:59:19
- - Michael2318   W takim razie jakie będzie najlepsze ustawienie se...   2.02.2013, 14:11:37
- - reptile_rex   @up Po prostu inne niż domyślne na hostingu? Doda...   2.02.2013, 15:31:54
|- - netmare   Cytat(reptile_rex @ 2.02.2013, 15:31...   2.02.2013, 16:52:04
- - reptile_rex   Session Hijacking   2.02.2013, 17:02:18
- - netmare   Mnie osobiście to nie przekonuje. Moim zdaniem wyk...   2.02.2013, 17:11:17
- - Damonsson   Nie do końca, znaczniej łatwiej wykraść url niż co...   2.02.2013, 23:09:03
- - netmare   Ja nie napisałem że nie jest łatwiej, tylko że jed...   3.02.2013, 22:45:31
|- - pyro   Cytat(netmare @ 3.02.2013, 22:45:31 )...   3.02.2013, 22:56:23
- - netmare   To w jednym się zgadzamy. Ale to z refererem... sł...   4.02.2013, 08:25:46
|- - pyro   Cytat(netmare @ 4.02.2013, 08:25:46 )...   4.02.2013, 09:10:43
- - netmare   Po pierwsze dałem przykład i poprosiłem Cię o wska...   4.02.2013, 09:52:17
|- - netmare   Cytat(pyro @ 4.02.2013, 10:27:09 ) No...   4.02.2013, 10:57:58
|- - pyro   Cytat(netmare @ 4.02.2013, 10:57:58 )...   4.02.2013, 11:12:46
- - pyro   Cytat(netmare @ 4.02.2013, 09:52:17 )...   4.02.2013, 10:27:09
- - netmare   Chodziło mi o prosty przykład strony o charkterze ...   4.02.2013, 11:45:26
- - pyro   Cytat(netmare @ 4.02.2013, 11:45:26 )...   4.02.2013, 12:06:38


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: 15.10.2025 - 11:05