| Forum / php / Zabezpieczenie sesji |
| Autor | Wiadomość |
| qpon
|
Posted: 7 Mar 2010 00:09:28 Witam szanownych kolegów Przeczytałem trochę materiałów na temat zabezpieczenia sesji w PHP przez atakami. Jak do tej pory spotkałem się z rozwiązaniem, że za każdym na nowo generowany jest ID sesji oraz dochodzi sprawdzenie, czy żądanie przyszło z tego samego adresu IP. Tak sobie myślę, czy złym pomysłem jest, zamiast sprawdzania adresu IP, generowanie jeszcze jednego ID (mechanizm transparentny dla użytkownika) i zapisywanie SID i dodatkowego ID w bazie i sprawdzanie, czy dwa te klucze się zgadzają... Co sądzicie o takim pomyśle? Będę wdzięczny za wszelkie wskazówki, komentarze. Pozdrawiam Kuba |
| NEO.pl / phpencoder.pl
|
Posted: 10 Mar 2010 14:25:18 Tak sobie myĹlÄ, czy zĹym pomysĹem jest, zamiast sprawdzania adresu
IP, generowanie jeszcze jednego ID (mechanizm transparentny dla uĹźytkownika) i zapisywanie SID i dodatkowego ID w bazie i sprawdzanie, czy dwa te klucze siÄ zgadzajÄ ... Co sÄ dzicie o takim pomyĹle? Ze jest bez wiekszego sensu. Rownie dobrze mozesz generowac jeszcze 100 innych ID, tylko niby po co? Skoro podloze Ci 1 to podloze Ci 100. Pozdrawiam, -- Szyfrowanie skryptow PHP v4 oraz v5. Blokady: czasowe, IP, MAC Loadery dla systemow: Windows, Linux, MacOS, Free/BSD, Solaris Zabezpiecz swoje skrypty PHP! Przetestuj http://phpencoder.pl |
| qpon
|
Posted: 23 Mar 2010 14:00:22 Ze jest bez wiekszego sensu. Rownie dobrze mozesz generowac jeszcze 100 innych ID, tylko niby po co? Skoro podloze Ci 1 to podloze Ci 100. Czekaj, bo może ja coś do końca nie wytłumaczyłem. Generalnie mechanizm jest taki: 1) user loguje się (wypełnia formularz). User podał poprawne dane. AKCJA W TLE: Następuje wygenerowanie losowego lancucha: "secret_key" i zapisanie go do zmiennej sesyjnej oraz bazy danych Nastepuje wygenrowanie nowego klucza sesji sid i zapisanie go do zmiennej sesyjnej oraz bazy danych 2) user przechodzi na dowolna podstrone: AKCJA W TLE Nastepuje sprawdzenie, czy wartości sid i secret_key ze zmiennych sesyjnych zgadzają się z wartościami w bazie danych. Jeżeli nie - przerwanie sesji. W jaki sposób osoba atakująca może wcześniej uzyskać informacje o tym, jaka wartość jest w zmiennej sesyjnej "secret_key"? Session Hijacking tutaj nie zadziała, dobrze myślę? Pozdrawiam Kuba |
| pakalk
|
Posted: 23 Mar 2010 14:41:16 W jaki sposób osoba atakująca może wcześniej uzyskać informacje o tym, jaka wartość jest w zmiennej sesyjnej "secret_key"? Session Hijacking tutaj nie zadziała, dobrze myślę? Po ch** przechowywać jakieś klucze w sesji. Jak ktoś się wbije na nią, to chyba tak samo się połączy z bazą, jak prawdziwy user, chyba, że coś mi umyka. Niby gdzie trzymasz dane do bazy? W innej sesji? Inna sprawa, ze session_regenerate_id() jest do dupy w sytuacji, gdy mamy xhr. |
|
Czas ładowania strony (sek.): 0.364 users miniBB.net © 2001-2010 | Polityka Prywatności e-giełdy + opisy gg + kumy fubi ° oko na maroko ° nimda °
|