İçeriğe geç

Ham SQL Injection Riski (ARCH5055)

Anahtar go.orm.raw-sql-injection-risk · Önem critical · Kategori orm

Ham SQL’i string interpolasyonu veya birleştirmeyle kurmak hem bir SQL injection vektörüdür hem de sorgu planı önbelleğini bozar. Daima bağlı parametre kullanın.

db.Raw("SELECT * FROM users WHERE email = '" + email + "'").Scan(&u)
db.Raw("SELECT * FROM users WHERE email = ?", email).Scan(&u)

Ham SQL’de kullanıcı girdisini birleştirmeyin; ? yer tutucularıyla bağlı parametre geçin.