SQL injektsioon Rakenduse andmebaasikihi turvanõrkus, mida põhjustab SQL-lausesse manustatud dünaamiliselt genereeritud stringiliteraalide ebakorrektne pagu. Tegemist on üldisema turvanõrkuste klassi ühe realisatsiooniga, kus üks programmi- või skriptikeel on manustatud teise sisse. Kui näiteks veebilehele sisselogimise vormi sisestada õige kasutajanimi ja parooli lahtrisse kirjutada "’OR 1=1", siis genereeritakse SQL-lause
SELECT UserList.Username
FROM UserList
WHERE
UserList.Username = ’Username’
AND UserList.Password = ’Password’ OR 1=1’
mis annab alati tulemuseks TRUE ja avab juurdepääsu andmebaasile.
SQL-injektsiooni takistamine ei ole raske, antud näites tuleks lihtsalt vormi sisestatud stringidest ülakomad välja filtreerida |