Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Hasło w COOKIE MD5 - czy tak można?, pytanie dot. bezpieczeństwa
lol75
post 27.08.2012, 21:07:11
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 14.03.2011

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


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.  
Go to the top of the page
+Quote Post
Szymciosek
post 27.08.2012, 21:19:02
Post #2





Grupa: Zarejestrowani
Postów: 1 168
Pomógł: 126
Dołączył: 5.02.2010
Skąd: Świdnica

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


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

Ten post edytował Szymciosek 27.08.2012, 21:19:17
Go to the top of the page
+Quote Post
pamil
post 27.08.2012, 21:24:04
Post #3





Grupa: Zarejestrowani
Postów: 97
Pomógł: 15
Dołączył: 12.08.2012
Skąd: Zabrze

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


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.

Ten post edytował pamil 27.08.2012, 21:25:45
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 13.07.2025 - 00:53