Puan ders bitince hesaba yazılır. Bu dersi tamamlayınca +55 XP alacaksın. Giriş yapmadan ilerlersen puan yalnız bu tarayıcıda durur.
SQL enjeksiyonu: sorgudan veri çekmek
Altay Kargo'nun giriş formu, kullanıcı adını ve parolayı doğrudan sorgu metnine ekliyor olsun. Sorgu şuna benzer: SELECT id FROM kullanici WHERE ad='<ad>' AND parola='<parola>'. Uygulama, dönen satır sayısı sıfırdan büyükse girişi onaylar. Kullanıcı adı alanına ' OR '1'='1 yazan biri, sorguyu WHERE ad='' OR '1'='1' AND parola='...' hâline getirir. Mantık işleci OR, koşulun geri kalanını anlamsız kılar; sorgu tablodaki ilk satırı döner ve giriş açılır. Parolayı hiç bilmeden, yalnız sorgunun mantığını değiştirerek içeri girilir. Kök neden aynı kalır: girdi, metin birleştirmeyle sorgunun içine karışmıştır.
Saldırgan burada durmaz. UNION SELECT ile ikinci bir sorguyu ilkine ekler ve tek tablonun dışına çıkar. İki sorgunun sütun sayısı ve türü eşleşmelidir; saldırgan bunu deneme yanılmayla, ORDER BY ile sütun sayısını sayarak bulur. Uyum sağlandığında, ilk sorgunun döndürdüğü alana istediği tabloyu, örneğin personel tablosundaki parola özetini yazdırır. Uygulama sonucu ekrana basıyorsa veri doğrudan görünür. Basmıyorsa saldırgan koşulu bilerek doğru ve yanlış kurup yanıt farkını ölçer; buna kör (blind) enjeksiyon denir ve veriyi karakter karakter söker.