Junior — Middle
Jakie środki bezpieczeństwa zapobiegają wstrzyknięciom SQL w aplikacji internetowej?
sobes.tech AI
Odpowiedź od AI
Aby zapobiec wstrzyknięciom SQL w aplikacjach internetowych, stosuje się następujące środki bezpieczeństwa:
- Użycie zapytań parametryzowanych (prepared statements), gdzie parametry są przekazywane oddzielnie od kodu SQL.
- Wykorzystanie bibliotek ORM (Object-Relational Mapping), które automatycznie escapują dane.
- Walidacja i filtrowanie danych wejściowych po stronie serwera.
- Ograniczenie uprawnień dostępu do bazy danych, aby zminimalizować szkody w przypadku potencjalnego ataku.
Przykład zapytania parametryzowanego w C# z użyciem ADO.NET:
using (var connection = new SqlConnection(connectionString))
{
connection.Open();
var command = new SqlCommand("SELECT * FROM Users WHERE Username = @username", connection);
command.Parameters.AddWithValue("@username", inputUsername);
var reader = command.ExecuteReader();
// przetwarzanie wyniku
}