Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 2 Dołączył: 10.06.2009 Ostrzeżenie: (0%)
|
Czesc, robie wlasny mechanizm sesji i mam problem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Dokladnie chodzi o informacje przechowywane w ciasku, wiec zacznijmy od poczatku... Sesje obejmuja tylko uzytkownikow zalogowanych... W ciastku planowalem przechowywac ID uzytkownika z bazy oraz hash jego IP+odpowiednie dosolonie, ciastko takie ma dosc ktorki termin i nikt z tego ciastka raczej nie skorzysta z pod innego adresu IP. Problem polega na tym ze jesli wprowadze opcje "zaloguj automatycznie/zapamietaj mnie" to w erze dynamicznego adresu IP okres zycia takiego ciastka zamiast 7dni wyniesie 24h - czyli do puki nie zrestartuje sie np taki modem Neostrady - wtedy adres IP zostaje zmieniony a podczas porownywania hashy mamy FALSE (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Pytanie: w jaki sposob zapisac informacje w ciastku uwzgledniajac jego dlugi termin waznosci (do autologowania) tak aby ktos kto wykradnie ciastko Kowalskiego nie mogl z niego skorzystac... Hm tak sobie analizowalem CMS Fusion i oni cale ciastko zrobili w sposob... w ciastku jest hash MD5 hasla zas w bazie danych zostaje przechowywane to samo haslo podwojnie hashowane za pomoca MD5. Jaki sens? Wiec? Osoba majaca dostep do ciastka kowalskiego moze wejsc na jego konto z innego komputera za posrednictwem tego wlasnie ciastka...?(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%)
|
No to już wiemy, że CMS Fusion to...
Ciastko sesji i ciastko automatycznego logowania to dwie inne sprawy, jednak w obu przypadkach: ciąg danych powinien być maksymalnie losowy (pseudolosowy), możesz generować to od chociażby
W przypadku pierwszego ciastka przy porównywaniu bierz pod uwagę wartość z ciastka + IP + ewentualnie ciąg identyfikujący przeglądarkę. Przy każdym przeładowaniu strony regeneruj ciastko. W drugim ciastku możesz dodać jeszcze ID użytkownika. |
|
|
|
Post
#3
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat + IP + Wtedy to będzie pozbawione sensu... Owszem, identyfikator przeglądarki jak najbardziej (w końcu to jej ciasteczkowy potwór dał prezent), ale IP + ADSL = funkcja bezużyeczna... Cytat W drugim ciastku możesz dodać jeszcze ID użytkownika. Liczbę ciastek trzeba ograniczać, gdyż są doklejane do każdego żądania. Wystarczy odpowiedni identyfikator powiązany z danymi sesyjnymi zapisanymi w bazie i porównywanie przy każdym wywołaniu. |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 2 Dołączył: 10.06.2009 Ostrzeżenie: (0%)
|
No tak ale nadal nie ma dobrego rozwiazania aby Nowobogacki nie mogl uzywac ciastka Kowalskiego... Mysle ze w zwyklym ciastku sesyjnym dobrze jednak przechowywac IP wtedy ciastko moglo by zyc 24h. $_SERVER['HTTP_USER_AGENT']; to raczej nie jest sposob na identyfikacje, biorac pod uwage ze Polacy za zaFirefoxowani... Po za tym czy generowanie hasha tak dlugiej informacji nie bedzie obciazac servera w przypadku wielu uzytkownikow?
Wiec tu pojawia sie kolejne pytanie - czym hashowac... najbezpieczniej sha1 - jednak czy nie pokusic sie w tym przypadku o md4 ktory jest najszybszym i mniej bezpiecznym od md5 algorytmem kryptograficznym? Hasla + sol w bazie hashuje sha1... ale ta subtelna roznica znakow 40 a 32 jednak - sklania mnie do zaoszczedzenia miejsca uzywajac md5 (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%)
|
Rozumiem, że projekt z założenia ma obsługiwać dziesiątki tysięcy klientów dziennie?
"Oszczędzać" - przy dzisiejszych technologiach (sprzęt) nie ma na czym. [na 8 znakach? 8 znaków = 8 bajtów] |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 2 Dołączył: 10.06.2009 Ostrzeżenie: (0%)
|
Rozumiem, że projekt z założenia ma obsługiwać dziesiątki tysięcy klientów dziennie? "Oszczędzać" - przy dzisiejszych technologiach (sprzęt) nie ma na czym. [na 8 znakach? 8 znaków = 8 bajtów] Nie oczywiscie ze nie, portal nigdy nie zdobedzie popularnosci takiej jak np dobreprogramy czy inne tego typu serwisy, ale dlaczego by nie oszczedzac? Jesli kazdy bedzie rozrzutny to spotka nas waskie gardlo... Po cos ta optymalizacje - szeroko rozumiana - wymyslono... |
|
|
|
Post
#7
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat "Oszczędzać" - przy dzisiejszych technologiach (sprzęt) nie ma na czym. [na 8 znakach? 8 znaków = 8 bajtów] To powiedz, dlaczego większe serwisy wydzielają osobne (sub)domeny na pliki niezwiązane z kontem użytkownika (obrazki, skrypty, etc)? (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) Cytat $_SERVER['HTTP_USER_AGENT']; to raczej nie jest sposob na identyfikacje, biorac pod uwage ze Polacy za zaFirefoxowani... Wiesz, ale nie wszyscy muszą używać tego samego buildu. A jeśli już tak bardzo zależy Ci na bezpieczeństwie, to posłuż się detekcją rozdzielczości + listą wtyczek dla danej przeglądarki. |
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 10:57 |