Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czy ten kod PHP jest podatny na wstrzyknięcie SQL?

Tak, jest wrażliwy. Mówisz wartości bezpośrednio z danych wejściowych użytkownika i umieszczasz je w zapytaniu.

Powinieneś spojrzeć na mysql_real_escape_string , lub (najlepiej) użyć MySQLi, który dostarcza sparametryzowanych zapytań. Wstrzyknięcia SQL są spowodowane wstrzykiwaniem danych użytkownika jako kodu SQL zamiast danych. Jedynym prawdziwym sposobem zabezpieczenia zapytania jest użycie zapytań parametrycznych, które oddzielają dane i tekst zapytania na poziomie protokołu.

Ponadto Twoje hasła są przechowywane w postaci zwykłego tekstu. Powinieneś używać funkcji haszowania solonego jako absolutnego minimum.

Powinieneś również spojrzeć na te niesamowite pytania:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd serializacji:podczas próby uzyskania blokady znaleziono zakleszczenie

  2. Czy mogę używać funkcji MySQL w przesunięciu LIMIT?

  3. Jak utworzyć i wstawić obiekt JSON za pomocą zapytań MySQL?

  4. jak zrobić podział na kolumnie tabeli sql

  5. Zapytanie CREATE DATABASE przy użyciu java jdbc i przygotowanej instrukcji zwraca błąd składni