Junior — Middle
Kokios saugumo priemonės leidžia išvengti SQL injekcijų interneto programoje?
sobes.tech AI
Atsakymas iš AI
Siekiant užkirsti kelią SQL injekcijoms interneto programose, taikomos šios saugumo priemonės:
- Naudojant parametrizuotas užklausas (prepared statements), kur parametrai perduodami atskirai nuo SQL kodo.
- Naudojant ORM (Object-Relational Mapping) bibliotekas, kurios automatiškai išvalo duomenis.
- Vartotojo įvesties patvirtinimas ir filtravimas serverio pusėje.
- Prieigos teisių prie duomenų bazės apribojimas, siekiant sumažinti žalą galimo atakos atveju.
Pavyzdys parametrizuotos užklausos C# kalba naudojant 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();
// rezultatų apdorojimas
}