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

Pytanie bezpieczeństwa PHP?

Istnieją dwa fronty, które należy wziąć pod uwagę przy akceptowaniu tekstu generowanego przez użytkownika, który zostanie później wyświetlony.

Po pierwsze, musisz chronić swoją bazę danych przed atakami typu Injection. Jest do tego prosta funkcja PHP:mysql_real_escape_string() zwykle wystarczy do ochrony bazy danych przed wstrzyknięciem podczas przekazywania tego ciągu do przechowywania jako wartości pola.

Stamtąd musisz uważać na swój wyświetlacz, ponieważ użytkownik, który może przesyłać kod HTML, może robić paskudne rzeczy innym użytkownikom kiedy ten kod zostanie wyświetlony. Jeśli tworzysz artykuły w postaci zwykłego tekstu, możesz po prostu htmlspecialchars() wynikowy tekst. (prawdopodobnie będziesz też chciał przekonwertować znaki nowej linii na tagi
). Jeśli używasz rozwiązania do formatowania, takiego jak silnik Markdown używany w tej witrynie, rozwiązania te zazwyczaj zapewniają oczyszczanie kodu HTML jako funkcję silnika , ale koniecznie przeczytaj dokumentację i upewnij się, że.

Och, upewnij się, że weryfikujesz również zmienne GET/POST używane do przesyłania artykułów. To oczywiste, a przeprowadzona weryfikacja musi być dostosowana do tego, co robi Twoja witryna z jej logiką.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przechowywanie danych z pola tekstu sformatowanego do bazy danych z formatowaniem

  2. JDBC Create Table Przykładowa instrukcja użycia

  3. Pełnotekstowe wyszukiwanie logiczne Mysql - sortuj według trafności i jeszcze jedno pole

  4. Zapętl MySQL, aby wstawić dane do tabeli

  5. HTML - Zmień\Aktualizuj zawartość strony bez odświeżania\przeładowania strony