Code-injectie is een beveiligingslek waarbij een aanvaller schadelijke code in een softwaretoepassing plaatst, zodat het systeem commando's of scripts uitvoert die niet zijn toegestaan. Dit gebeurt meestal doordat invoer van gebruikers onvoldoende wordt gecontroleerd of verkeerd wordt verwerkt. De geïnjecteerde code verstoort de normale werking, waardoor aanvallers ongeoorloofd toegang krijgen, gevoelige informatie aanpassen of hele systemen overnemen.
Dit lek komt vaak voor in webapplicaties, bijvoorbeeld via SQL-injectie, waarbij aanvallers invoervelden misbruiken om schadelijke SQL-commando's in te voeren. Een kwaadwillende gebruiker kan bijvoorbeeld bepaalde commando's in een inlogformulier typen en zo de database misleiden om gevoelige gebruikersgegevens of beheerderstoegang vrij te geven. Om code-injectie te voorkomen, moeten ontwikkelaars alle invoer van gebruikers grondig controleren en opschonen, veilige programmeertechnieken gebruiken zoals geparametriseerde query's, en regelmatig beveiligingscontroles en updates uitvoeren om zwakke plekken snel te vinden en te herstellen.