Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> $_SESSION czy to bezpieczne?
szyn33k
post 6.02.2013, 22:05:05
Post #1





Grupa: Nieautoryzowani
Postów: 18
Pomógł: 0
Dołączył: 3.01.2013

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


Cześć, posiadam taki oto kod
  1. <?php
  2. $login = $_POST['login'];
  3. $haslo = $_POST['haslo'];
  4. $przycisk = $_POST['ok'];
  5.  
  6. $user[1] = '202cb962ac59075b964b07152d234b70';
  7. $password[1] = '202cb962ac59075b964b07152d234b70';
  8.  
  9. $user[2] = '202cb962ac59075b964b07152d234b70';
  10. $password[2] = '202cb962ac59075b964b07152d234b70';
  11.  
  12. if (isset($przycisk)) {
  13. if (empty($login) || empty($haslo)) {
  14. echo '<div id="blad">Pola są puste</div>';
  15. }
  16. else {
  17.  
  18. if (md5($login) != $user[$loginy] || md5($haslo) != $password[$hasla]) {
  19. echo '<div id="blad">Error!</div>';
  20. }
  21. else {
  22. echo '<div id="zalogowany">Zalogowano!</div>';
  23.  
  24. $_SESSION['zalogowany'] = 'tak';
  25. header ('location: ./index.php');
  26.  
  27. }
  28. }
  29. }
  30.  
  31. ?>


i teraz rodzi się pytanie, czy jakiś zły user nie zrobi tak że 'podrobi' sobie sesje 'zalogowany' o wartosci 'tak' która przeniesie go do index.php ? A jeżeli można podrobić taką sesję to jak to uczynić ? I jak się zabezpieczyć przed ewentualnym włamaniem.
Pozdrawiam, Szyn33k smile.gif

Ten post edytował szyn33k 6.02.2013, 22:06:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
sajegib
post 6.02.2013, 22:13:15
Post #2





Grupa: Zarejestrowani
Postów: 352
Pomógł: 59
Dołączył: 16.01.2013

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


generalnie trzymanie hasha hasła w zmiennej jest średnim pomysłem
Go to the top of the page
+Quote Post
szyn33k
post 6.02.2013, 22:16:18
Post #3





Grupa: Nieautoryzowani
Postów: 18
Pomógł: 0
Dołączył: 3.01.2013

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


Cytat(sajegib @ 6.02.2013, 22:13:15 ) *
generalnie trzymanie hasha hasła w zmiennej jest średnim pomysłem


dlaczego? możesz coś więcej o tym powiedziec?
Go to the top of the page
+Quote Post
netmare
post 6.02.2013, 22:16:48
Post #4





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

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


  1. if (md5($login) != $user[$loginy] || md5($haslo) != $password[$hasla])


Pomijając kwestię md5 na loginie, która jest nieco dziwna, co robi ta linia? bo nie widzę zmiennych $hasla, $loginy i w ogóle wygląda bzdurnie tzn niedziałająco. Jeśli trzymasz na goło w pliku hasła użyj sha512 i wzmocnij przez SALT. Bo przy pomocy tablic tęczowych od razu wiadomo że masz tam '123'. Może dopisać, edytować ale ciężko to osiągnąć. Doczytaj gdzie są przechowywane sesje, poczytaj może atakach na sesję, a Ci się wyklaruje trochę temat.

Ten post edytował netmare 6.02.2013, 22:22:50
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: 14.08.2025 - 02:31