Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Hasło w COOKIE MD5 - czy tak można?
Forum PHP.pl > Forum > Przedszkole
lol75
Czesc
Zrobiłem panel administracyjny, z logowaniem.
Login i hasło przechowuję jednal w COOKIE (hasło w MD5).

Czy można tak robić, czy jest to działanie niebezpiecznie?


  1. $user = $_COOKIE["user"];
  2. $passMD5 = $_COOKIE["passMD5"];
  3.  
  4. if(!isset($user) || !isset($passMD5))
  5. {
  6. $user = $_POST['user'];
  7. $passMD5 = md5($_POST['pass']);
  8. }
  9.  
  10. $czyLogowaniePowiodloSie = $db->chechPass($user, $passMD5);
  11.  
  12. if($czyLogowaniePowiodloSie == TRUE)
  13. {
  14. setcookie("user", $user, time() + 60);
  15. setcookie("passMD5", $passMD5, time() + 60);
  16.  
  17. include_once 'main.php';
  18. }
  19. else
  20. {
  21. include_once 'formularzLogowania.php';
  22. }
  23.  
Szymciosek
Po co Ci login i hasło w Cookie ?
Zrób sobie za każdym poprawnym logowaniem w bazie wpis user_hash, który będzie trzymał zakodowany zlepek zmiennych np Login, Ip połączone ze sobą i zakodowane w MD5.

Przy każdym wejściu na stronę sprawdzaj czy user_hash w cookie = user_hash w bazie danych

Mi tak gdzieś radzili i rzeczywiście sam tak zrobiłem
pamil
Cytat(Szymciosek @ 27.08.2012, 22:19:02 ) *
Po co Ci login i hasło w Cookie ?
Zrób sobie za każdym poprawnym logowaniem w bazie wpis user_hash, który będzie trzymał zakodowany zlepek zmiennych np Login, Ip połączone ze sobą i zakodowane w MD5.

Przy każdym wejściu na stronę sprawdzaj czy user_hash w cookie = user_hash w bazie danych

Mi tak gdzieś radzili i rzeczywiście sam tak zrobiłem

Tak, do czasu gdy ktoś uzyska dostęp do kodu źródłowego/dojdzie do sposobu robienia "losowego" hasha.
Hasło powinno być przechowywane w jednym miejscu (najprwadopodobniej u Ciebie baza danych).
Pozostałe dane (wystarczy ID użytkownika) oraz jakieś dane kontrolne (useragent, aby wychwycić niespodziewane zmiany przeglądarki z żądania na żądanie) trzymaj w sesji.

I login oraz adres IP jest raczej stały dla użytkownika, tym łatwiej podszyć się pod użytwnika, toż to dane ogólnodostępne i nielosowe.
Nie ma sensu robić własnej niby-sesji.
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.