Sobes.tech
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
}