Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V   1 2 3 >  
Reply to this topicStart new topic
> [PHP] bezpieczenstwo komunikacji z baza
szymonstawi
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 6.04.2011

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


witam wszystkich!
mam strone gdzie mozna dodawac artykuly (index.php) i strone moderacji (edycja, usuwanie - admin.php). do komunikacji z baza mam plik baza.php i tam sa funkcje add, edit, delete. wejscie do admina jest oczywiscie zabezpieczone prawami dostepu zrobionymi na sesjach i teraz mam pytanie. czy takie zabezpieczenie wystarczy? plik baza.php tez powinienem zabezpieczyc sesja? tylko czy sesja wystarczy?
Go to the top of the page
+Quote Post
desperat666
post
Post #2





Grupa: Zarejestrowani
Postów: 31
Pomógł: 12
Dołączył: 19.03.2011

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


mowisz ze baza.php zawiera funkcje, wiec co da wykonanie pliku baza.php? nic.
Go to the top of the page
+Quote Post
szymonstawi
post
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 6.04.2011

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


ok, dzieki, a samo zabezpieczenie na podstawie sesji wystarczy w pliku admin.php? tam sa linki do usuwania, wiec poza tym adminem i tym kto potrafi ukrasc sesje trzeba sie jeszcze jakos zabezpieczyc?
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #4





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

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


Sesje bazujące na mechanizmach php mająj uroczą skłonność do trzymania plików z numerami sesji w katalogu tymczasowym dostępnym do odczytu/zapisu dla każdego użytkownika hostingu współdzielonego.

Bezpieczne to to nie jest...
Go to the top of the page
+Quote Post
szymonstawi
post
Post #5





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 6.04.2011

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


wiec jak najlepiej zrobic sesje?

a poza tym to ify w plikach gdzie sa linki do usuwania itp wystarcza?

moze ktos cos o tych sesjach napisac? skoro nie uzywac domyslnych to jakie mam uzywac?
Go to the top of the page
+Quote Post
Fifi209
post
Post #6





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


session handler


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
szymonstawi
post
Post #7





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 6.04.2011

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


dzieki, ale strasznie malo materialow o tym. poza tymi z php.pl to nic konkretnego nie znalazlem, nawet za granica. czemu, skoro te zwykle sesje zle dzialaja?
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #8





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

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


Sesje działają źle (czyt. niebezpiecznie), ponieważ niedbała konfiguracja współdzielonych serwerów hostingoweych powoduje, że każdy kto posiada konto na takim serwerze może przejąć Twoją sesję.

Polecam implementację mechanizmu sesji bez korzystania z funkcji session_*
Ta w CodeIgniterze jest całkiem spoko, domyślnie szyfruje dane sesji i trzyma w COOKIE, działa to dobrze póki nie wrzucisz do sesji zbyt wiele danych, czego skutkiem będzie utrata sesji.
Na szczęście jest wersja pracująca z bazą danych, poszukaj na CI-wiki.

Ten post edytował wNogachSpisz 6.04.2011, 23:33:22
Go to the top of the page
+Quote Post
Fifi209
post
Post #9





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(wNogachSpisz @ 7.04.2011, 00:15:08 ) *
Polecam implementację mechanizmu sesji bez korzystania z funkcji session_*

Przecież można ustawić swojego handlera session_set_save_handler


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #10





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

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


Fajne, tylko jak tego użyć gdy pracujesz wyłącznie wewnątrz obiektów w modelu MVC i nie chcesz "śmiecić" pluginami, hookami i innymi helperami?

Jest tego obiektowy wariant, jak np. stream_wrapper_register() ?

Ten post edytował wNogachSpisz 6.04.2011, 23:38:17
Go to the top of the page
+Quote Post
szymonstawi
post
Post #11





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 6.04.2011

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


http://php.pl/Wortal/Artykuly/PHP/Architek...I/Implementacje

a tutaj jest uzywane session_ jakby ktos mial jakis prosty i dobry przyklad to poprosze:)
Go to the top of the page
+Quote Post
bugmenot
post
Post #12





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 18.07.2007

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


A nie można tego zrobić przez .htaccess i .htpasswd?
Go to the top of the page
+Quote Post
szymonstawi
post
Post #13





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 6.04.2011

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


czyli jak?
Go to the top of the page
+Quote Post
nekomata
post
Post #14





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

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


Cytat(fifi209 @ 6.04.2011, 23:33:13 ) *
Przecież można ustawić swojego handlera session_set_save_handler

Cytat(wNogachSpisz @ 6.04.2011, 23:35:49 ) *
Fajne, tylko jak tego użyć gdy pracujesz wyłącznie wewnątrz obiektów w modelu MVC i nie chcesz "śmiecić" pluginami, hookami i innymi helperami?
Jest tego obiektowy wariant, jak np. stream_wrapper_register() ?

Tak się zastanawiam , własny handler (cool!) dla sessji byłby fajną sprawą , ale nie wystarczy np.
  1. session_save_path(__DIR__.'\sessions');
Sesje są zapisywane wtedy w katalogu sessions , wywołanego pliku (ja wszystkie swoje sesje załączam zapomocą jednego include więc to nieproblem) , no i mam na myśli to że jak już nam ktoś po plikach(z naszego katalogu public_) może szperać to czy mamy sesje normalnie czy np. za pomocą własnego handlera w mysqli albo jeszcze inaczej i tak jest to nieważne bo wszystkie pliki są dostępne.Więc czy naprawdę warto bawić się we własnego handlera?
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #15





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

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


Cytat(nekomata @ 7.04.2011, 20:27:40 ) *
Sesje są zapisywane wtedy w katalogu sessions


Jest to niewątpliwie rozwiązanie problemu bezpieczeństwa..
Problem w tym, że dla mnie jest to struganiem protezy.
Najlepiej pozbyć się problemu sesji obsługiwanych przez PHP przez własną implementację
Nie znam ani jednego racjonalnego argumentu przeciwko, jeśli ktoś jest w stanie taki wysunąć, to chętnie przeczytam.
Własna implementacja sesji daje odporność na sytuacje nieprzewidzane,
jak np. blokada funkcji session_save_path() czy session_set_save_handler()...

Ten post edytował wNogachSpisz 7.04.2011, 19:43:10
Go to the top of the page
+Quote Post
nekomata
post
Post #16





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

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


Ja mam namyśli , że właśnie z folderem sessions , jeśli ktoś nam przegląda to (nawet innym plikiem php na swoim koncie itd.) może utworzyć sobie duplikat plików serwisu , przejrzeć jak działa twój własny handler , i uzyskać dostęp .Jeśli session_save_path() niedziałający to ja bym po prostu brał zwrot pieniędzy i zmieniał serwer.
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #17





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

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


Cytat(nekomata @ 7.04.2011, 20:45:08 ) *
Ja mam namyśli , że właśnie z folderem sessions , jeśli ktoś nam przegląda to (nawet innym plikiem php na swoim koncie itd.) może utworzyć sobie duplikat plików serwisu , przejrzeć jak działa twój własny handler , i uzyskać dostęp .Jeśli session_save_path() niedziałający to ja bym po prostu brał zwrot pieniędzy i zmieniał serwer.

Kopczyk problemów których można uniknąć stosująć własną implementację sesji.
Kolejny argument 'Za'.

Ten post edytował wNogachSpisz 7.04.2011, 19:59:54
Go to the top of the page
+Quote Post
nekomata
post
Post #18





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

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


Tylko ... jeśli jakaś funkcja która jest zaimplementowana może nie działać równie dobrze możemy spekulować co zrobić gdy nie-zadziała echo (tak wiem echo nie jest funkcją , przykład).
Go to the top of the page
+Quote Post
Fifi209
post
Post #19





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


wNogachSpisz skoro tak bardzo polecasz pisanie własnego systemu sesji, swojej implementacji, dajesz tak dużo argumentów "za" to z pewnością chciałbyś się podzielić swoimi doświadczeniami, bo zapewne pisałeś nie jeden mechanizm sesji lub masz już swój jeden idealnie dopracowany. Z przyjemnością oglądniemy Twoją implementację systemu sesji, w końcu tak sobie zachwalasz.

Jeżeli masz tyle argumentów "za" to poprzyj swoimi kodami! Ba! Więcej, daj do ocen i zobaczymy jakie komentarze i oceny dostaniesz.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
potreb
post
Post #20





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


Jestem za, a zresztą po co własny mechanizm sesji bo nigdy nie stosowałem. Czy naprawdę defaultowe sesje są tak kiepskie, że trzeba pisać własny session handler?

Ten post edytował potreb 7.04.2011, 21:41:08


--------------------

Go to the top of the page
+Quote Post

3 Stron V   1 2 3 >
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 Aktualny czas: 19.08.2025 - 09:57