1. SQL & NoSQL Injection
1. SQL & NoSQL Injection: SQL Injection, bir veritabanı dolabına normal bir isim yerine, dolabın tüm kilitlerini tek seferde açıp bütün çekmeceleri yere döken sihirli bir maymunc
SQL Injection, bir veritabanı dolabına normal bir isim yerine, dolabın tüm kilitlerini tek seferde açıp bütün çekmeceleri yere döken sihirli bir maymuncuk (örneğin: ' OR 1=1 --) sokmaya benzer.
2 Analoji: Benzetmelerle SQLi
Garson ve Mutfak Analojisi
Sihirli Kilitli Kutu
2 Akıl Yürütme: Neden Oluşur?
Kod ve Verinin Karışması
Parametrelendirmenin Olmaması
2 LEGO ile Anlatım: LEGO Yapboz Mantığı
Hangi SQL girdisi, veritabanını kandırarak şifresiz giriş yapmayı sağlayabilir?
admin' AND password='123
admin' OR '1'='1 girdisindeki tırnak işareti mevcut SQL komutunu kırar, ardından gelen OR '1'='1 koşulu her zaman doğru (true) sonuç vereceğinden şifre kontrolü atlanır.
SQL Injection açığını engellemek için kod tarafında ne kullanılmalıdır?
String Birleştirme (+)
Parametrelendirilmiş Sorgular (Prepared Statements)