Что такое SQL injection?

Junior
1.4k просмотров
AFK Offer AI

SQL injection — атака, при которой злоумышленник подставляет SQL-код через пользовательский ввод. Классический пример: логин admin' OR 1=1 -- превращает запрос в WHERE username = 'admin' OR 1=1, и ты пускаешь кого угодно. Защита проста — никогда не конкатенируй строки в SQL, используй параметризованные запросы (prepared statements). В Go это db.Query("SELECT * FROM users WHERE email = $1", email). Если используешь sqlc или pgx — ты защищён по умолчанию, потому что они всегда используют плейсхолдеры. SQL injection входит в OWASP Top 10 и до сих пор встречается в продакшене.

Следующий вопрос

Типы данных в Go?