EMZETT.
Giriş yap

SQL enjeksiyonu

Kısaca: SQL enjeksiyonunda saldırgan, uygulama girdiyi denetlemeden sorguya kattığı için giriş alanına kendi veritabanı komutlarını sokar.

Biraz daha ayrıntılı: Sorguyu metin olarak birleştiren bir giriş (... WHERE name = ' + girdi + '), ' OR '1'='1 girdisiyle kandırılabilir. Sonuç, oturum açmayı aşmaktan tüm veritabanını okumaya veya silmeye kadar uzanır.

Ayrıntılı

  • Korunma: Parametreli sorgular (prepared statements). Girdiler komuttan ayrı iletilir ve asla kod olarak okunmaz.
  • ORM: Modern çerçeveler, ham metin birleştirmediğiniz sürece varsayılan olarak parametre kullanır.
  • Diğer önlemler: En az veritabanı yetkisi, girdiyi doğrulama, hata mesajlarını göstermeme.
  • Test: Güvenlik tarayıcıları ve kod incelemesi.

Ayrıca bakınız: OWASP Top 10, XSS (siteler arası betik çalıştırma)