Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Bezpieczne sesje
Forum PHP.pl > Forum > Przedszkole
jarek998
Witam, jako że tutaj są bardziej doświadczeni użytkownicy, chciałbym się zapytać czego używać przy sesjach aby nie było zbyt łatwo jej przechwycić?

Aktualnie mam takie coś:

  1. session.use_only_cookies;
  2. if(empty($_SESSION['gracz'])){
  3. echo("<script type='text/javascript'>window.alert('Twoja sesja wygasła.');document.location.href = 'index.php';</script>");
  4. }
  5.  
  6. $string = $_SERVER['HTTP_USER_AGENT'];
  7. $string .= 'SHIFLETT';
  8.  
  9. /* Dodanie innych danych */
  10.  
  11. $fingerprint = md5($string);
  12.  
  13. if (isset($_SESSION['HTTP_USER_AGENT']))
  14. {
  15. if ($_SESSION['HTTP_USER_AGENT'] != md5($_SERVER['HTTP_USER_AGENT']))
  16. {
  17. echo "Tutaj będziemy prosić o hasło";
  18. }
  19. }
  20. else
  21. {
  22. $_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);
  23. }


Cały ten plik jest odpowiedzialny za sesje.

Macie jakieś ciekawe rozwiązania? Czy to jest dobrze zrobione?
Pozdrawiam smile.gif
viking
Co to jest?
  1. session.use_only_cookies;

Dane te ustawiasz przez ini_set();

User agent jest pewnie miliony takich samych.
jarek998
Czyli muszę zrobić w ten sposób?
  1. ini_set(session.use_only_cookies);


Czyli User Agent skasować, bo jest nie potrzebne?
viking
W kodzie który zacytowałeś masz nawet link do dokumentacji. Jak wygląda składnia?
  1. string ini_set ( string $varname , string $newvalue )


Jeśli już to ip.
jarek998
jako $varname zrobić = session.use_only_cookies
a $newvalue = 1 ?

Kompletnie na tym leże :/
viking
To przeczytaj jakiś kurs albo dokumentację o zmiennych, stałych, funkcjach. Bez tego nic nie zrobisz. Nawet w stopce mam link.
jarek998
Wpadłem na ciekawy artykuł, w którym zawarty jest kod:

  1. ini_set('session.save_path', '/bezpieczna/lokalizacja/sesji');


dobre rozwiązanie? Czy muszę teraz stworzyć katalogi "bezpieczna/lokalizacja/sesji"?
Damonsson
1. zamiast user_agent, weź sobie coś takiego http://clientjs.jacks.io/ i masz tam browser fingerprint id.
2. gdzie trzymasz tę stronę? Jak na jakimś hostingu czy VPS z dzielonym dyskiem to jasne, bezpieczniej będzie tylko tam gdzie Ty masz dostęp, oczywiście POZA public_html. Jak serwer jest Twój to zostaw w spokoju ścieżkę.

wpisz sobie ten save_path i zobacz czy się same utworzą, jak nie to znaczy, że musisz stworzyć, kosztowałoby Cię to mniej czasu niż napisanie posta.
jarek998
Hosting wykupiony na pewien okres.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.