Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Czy skrypt jest zabezpieczony przed SQLinjection
tomek200
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

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


Witam mam pytanie czy ten skrypt jest bezpieczny na działanie SQLinjection?
  1. <?php
  2.  
  3. include('connect.php');
  4.  
  5. $login = $_POST['login'];
  6. $haslo = $_POST['password'];
  7.  
  8. if ( trim($login) != '' && trim($haslo) != '' ){
  9. $zapytanie = mysql_query("SELECT login FROM user WHERE login = '$login'");
  10. $wynik_zapytania = mysql_fetch_array($zapytanie);
  11.  
  12. if ($wynik_zapytania[0] != $login) {
  13. header('Location: admin_login.php?message=user_nie_istnieje');
  14. }else{
  15. $zapytanie = mysql_query("SELECT password, imie, nazwisko FROM user WHERE login = '$login'");
  16. $wynik_zapytania = mysql_fetch_array($zapytanie);
  17.  
  18. if ($haslo == $wynik_zapytania[0]) {
  19.  
  20. $_SESSION['imie'] = $wynik_zapytania[1];
  21. $_SESSION['nazwisko'] = $wynik_zapytania[2];
  22. $_SESSION["logged"] = true;
  23. header('Location: nav.php');
  24.  
  25. }
  26. else{
  27. header('Location: admin_login.php?message=zle_haslo');
  28. }
  29. }
  30. }else{
  31. header('Location: admin_login.php?message=wypełnij_pola_formularza');
  32. }
  33. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
ilidir
post
Post #2





Grupa: Zarejestrowani
Postów: 183
Pomógł: 14
Dołączył: 27.09.2014

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


poczytaj -> http://www.php.pl/Wortal/Artykuly/Bezpiecz...wa-skryptow-PHP
Go to the top of the page
+Quote Post
pasman
post
Post #3





Grupa: Zarejestrowani
Postów: 70
Pomógł: 4
Dołączył: 16.03.2012

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


Cytat(tomek200 @ 17.03.2015, 17:23:18 ) *
Witam mam pytanie czy ten skrypt jest bezpieczny na działanie SQLinjection?


czy umieściłeś tu jakiekolwiek zabezpieczenie ?
coś nie mogę się dopatrzeć...
Go to the top of the page
+Quote Post
goartur
post
Post #4





Grupa: Zarejestrowani
Postów: 233
Pomógł: 27
Dołączył: 19.10.2014

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


Cytat(pasman @ 17.03.2015, 22:00:21 ) *
czy umieściłeś tu jakiekolwiek zabezpieczenie ?
coś nie mogę się dopatrzeć...

Och jak ja lubie takie osoby ( thumbsdownsmileyanim.gif )

Witam,

polecam zrobienie na poczatku jakiegos pliku z funkcjami i podpiecie go pod ten scrypt ("require")

Zrob funkcje, ona powinna cie w miare zabezpieczyc.:
  1. function protect_SQL($string){
  2. return $string;
  3. }


mysql_real_escape powinno wystarczyc lecz na wszelki wypadek dodalem pare innych wbudowanych funkcji.


Nastenie:
  1. $login = function protect_SQL($_POST['login']);
  2. $haslo = function protect_SQL($_POST['password']);


I usun Trim z zapytan IF
Go to the top of the page
+Quote Post
tzm
post
Post #5





Grupa: Zarejestrowani
Postów: 675
Pomógł: 58
Dołączył: 17.12.2013

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


Cytat(goartur @ 18.03.2015, 16:11:03 ) *
scrypt ("require")

Cytat(goartur @ 18.03.2015, 16:11:03 ) *
Och jak ja lubie takie osoby ( thumbsdownsmileyanim.gif )


Cytat
chcesz zmieniać świat zacznij od siebie


chcesz oceniać innych, naucz się pisać.
Go to the top of the page
+Quote Post
viking
post
Post #6





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Zamień całość na PDO z prepared statements i wtedy rozwiążesz problem. Rozszerzenie mysql nie jest już wspierane.


--------------------
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 Aktualny czas: 21.08.2025 - 13:13