Sobes.tech
Junior — Middle

Кадом чораҳои бехатарӣ имкон медиҳанд, ки аз вуруди SQL дар веб-барномаҳо пешгирӣ карда шавад?

sobes.tech AI

Ҷавоб аз AI

Барои пешгирии вуруди коди SQL дар барномаҳои веб, тадбирҳои зерин амалӣ карда мешаванд:

  • Истифодаи суолҳои параметрӣ (prepared statements), ки дар он параметрҳо аз коди SQL ҷудо дода мешаванд.
  • Истифодаи китобхонаҳои ORM (Object-Relational Mapping), ки автоматӣ маълумотҳоро escape мекунанд.
  • Санҷиш ва филтр кардани воридоти корбар дар ҷониби сервер.
  • Маҳдуд кардани ҳуқуқҳои дастрасӣ ба базаи додаҳо барои кам кардани зарар дар ҳолати ҳамла.

Масалан, дар C# бо истифода аз 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();
    // коркарди натиҷа
}