Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Bezpieczeństwo otrzymywanych danych
Forum PHP.pl > Forum > Przedszkole
-pehapowiec-
Od dłuższego czasu we wszystkich swoich projektach korzystam z takiego kodu:
  1.  
  2. function stripslashes_deep($value) {
  3. $value = is_array($value) ?
  4. array_map('stripslashes_deep', $value) :
  5. stripslashes($value);
  6. return $value; }
  7. function addslashes_deep($value) {
  8. $value = is_array($value) ?
  9. array_map('addslashes_deep', $value) :
  10. addslashes($value);
  11. return $value; }
  12. function html_deep($value) {
  13. $value = is_array($value) ?
  14. array_map('html_deep', $value) :
  15. return $value;
  16. }
  17.  
  18. $_POST = array_map('stripslashes_deep', $_POST);
  19. $_GET = array_map('stripslashes_deep', $_GET);
  20. $_COOKIE = array_map('stripslashes_deep', $_COOKIE);
  21. }
  22. $_POST = array_map('addslashes_deep', $_POST);
  23. $_POST = array_map('html_deep', $_POST);
  24. $_GET = array_map('addslashes_deep', $_GET);
  25. $_GET = array_map('html_deep', $_GET);
  26. $_COOKIE = array_map('addslashes_deep', $_COOKIE);
  27. $_COOKIE = array_map('html_deep', $_COOKIE);
  28.  



Chciałbym się dowiedzieć czy rozwiązanie z którego korzystam zapewnia bezpieczeństwo przed SQLinjection i XSS


Z góry dziękuję
-pehapowiec-
Takie popularne forum i nikt nie jest w stanie udzielić odpowiedzi?
Damonsson
Dużo osób popiera akcję "Jesteś zbyt leniwy, żeby się zarejestrować, ja jestem zbyt leniwy żeby Ci odpisać" wink.gif

Bezpieczeństwo przed SQLinjection zapewnia PDO.
A przed xss odpowiednie natywne funkcję php, nie ma imho potrzeby pisania jakichś dodatkowych.
foxbond
Jak dla mnie to zapewnia całkowitą ochronę.

W końcu dla wszystkich wartości $_GET, $_POST i $_COOKIE zostanie przeprowadzone htmlspecialchars i strip_tags (html) oraz addslashes (mysql). Nie wiem tylko jak się zachowa taka funkcja gdy przesłana zostanie tablica (np. z listy wyboru). $_GET['field'] = array(2,4,5,6);

EDIT:
a nie, nie zauważyłem, przesłane tablice również są filtrowane.
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.