Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [dyskusja] Filtrowanie hasła, czy trzeba, gdy jest kodowane w md5?
Athlan
post 18.05.2006, 10:12:25
Post #1





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Od kilku dni dręczy mnie myśl, że teoretycznie hasła, które jest kodowane na bieżąco w ten sposób, nie trzeba filtrować:

  1. <?php
  2.  
  3. $password = "jakaś-wartosc-md5"; //haslo, ktore trzeba podac
  4.  
  5. if($_POST['pass'])
  6. {
  7. if(md5($_POST['pass']) == $password)
  8. {
  9. return 1;
  10. }
  11. else
  12. {
  13. return 0;
  14. }
  15. }
  16. else
  17. {
  18. echo'<form action="'.$_SERVER['PHP_SELF'].'"><input type="password" name="pass"><input type="submit" value="Loguj"></form>';
  19. }
  20.  
  21. ?>


Moim zdaniem zmienna $_POST['pass'] nie powinna przechodzić filtrów typu htmlspecialchars(), czy addslashes(), bo po co, skoro jest porównywana w md5() i nie jest wyświetlana na stronie?

Inaczej, gdybyśmy wyświetlili tą wartość na stronie, wtedy filtry są zalecane (wymagane w sumie).

Co Wy na ten temat sądzicie?


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
sf
post 18.05.2006, 10:15:31
Post #2





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

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


Gratuluje dojscia do tak wspanialnego wniosku tongue.gif

Przy okazji chcialbym Ci powiedziec, ze jesli uzywasz PDO to w ogole juz prawie nic nie musisz filtrowac winksmiley.jpg


--------------------
Zapraszam na mój php blog, tworzenie stron.
Go to the top of the page
+Quote Post
dr_bonzo
post 18.05.2006, 10:19:28
Post #3





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Cytat
Moim zdaniem zmienna $_POST['pass'] nie powinna przechodzić filtrów typu htmlspecialchars(), czy addslashes()

Na WEJSCIU zadna zmienna nie powinna byc traktowana tymi funkcjami -- addslashes() jest nieodpowiednie przy dodawaniu danych do bazy -- uzyj mysql_real_escape czy podobnych.
htmlspecialchars -- uzywasz przy wypisywaniu danych do przegladarki (np. zeby wypisac kod html -- tak jak tutaj na forum)


Cytat
Przy okazji chcialbym Ci powiedziec, ze jesli uzywasz PDO to w ogole juz prawie nic nie musisz filtrowac winksmiley.jpg

$stmt->bindPAram( 'name', $value, PDO::ATTR_STR );
to chyba *jest* filtrowanie smile.gif tyle ze funkcje filtrujace sa juz napisane


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Athlan
post 18.05.2006, 10:20:36
Post #4





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Cytat(sf @ 2006-05-18 09:15:31)
Gratuluje dojscia do tak wspanialnego wniosku tongue.gif

Wszyscy mi trują że mam filtrować, no ale jak widać na powyższym przykładnie - NIE TRZEBA (chyba), ale czy to jest do złamania (przez potencjalnego hakera) jak coś namiesza ze slaschami ?

Pamiętam jak w phpBB było coś takiego w bbcode, dało się co nieco wtrzyknąć (ale nie wiem, czy ma to jakikolwiek związek z owym topickiem)

P.S. może dodam: nie odwołuje się w tym przypadku do bazy danych, tylko do zmiennej z konfigu, przy bazie danych filter byłby wskazany smile.gif

Ten post edytował Athlan 18.05.2006, 10:26:02


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
Vogel
post 18.05.2006, 10:28:51
Post #5





Grupa: Zarejestrowani
Postów: 402
Pomógł: 0
Dołączył: 20.01.2003

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


nie boj sie. tutaj nic nie wszczyknie.


--------------------
Go to the top of the page
+Quote Post
dr_bonzo
post 18.05.2006, 10:32:27
Post #6





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Cytat
Wszyscy mi trują że mam filtrować, no ale jak widać na powyższym przykładnie - NIE TRZEBA

No bo trzeba -- tylko nie w taki sposob jak opisales (htmlspecialhchars + addslashes).
Jest topic o SQL Injection na forum.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Athlan
post 18.05.2006, 10:33:11
Post #7





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Cytat(Vogel @ 2006-05-18 09:28:51)
nie boj sie. tutaj nic nie wszczyknie.

No tak... a teraz zakaładamy, że hasło jest w bazie... ewentualnie zapisujemy zle logowania i hasła, jakie użytkownik podał, używamy filtru (funkcji) mysql_real_escape() , teraz haker może nam coś zepsuć w bazie danych?


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
em1X
post 18.05.2006, 16:01:40
Post #8





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

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


Wychodź z założenia, że każda linijka danych pobieranych od użytkownika jest zagrożeniem - a nie będziesz miał problemów z bezpieczeństwem...

Jak to mówią w RUPie: atakuj ryzyko, zanim ryzyko zaatakuje Ciebie biggrin.gif

Ten post edytował em1X 18.05.2006, 16:02:25


--------------------
eh, co polska wódka to polska wódka
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: 29.06.2025 - 06:32