Kodeinjeksjon kan brukes av en angriper til å introdusere skadelig kode i et sårbart dataprogram og endre kjøreforløpet.
all programvare tar en slags inngang – et sikkert program bør behandle all inngang fra en ekstern kilde som «uklarert» til det motsatte er bevist. Kodeinjeksjonssårbarheter eksisterer når en angriper kan sende inn kjørbare inndata til et program og lure programvaren til å kjøre inndataene. Dette gir angriperen en kanal som de kan omgå eventuelle sikkerhetsbegrensninger som er satt på plass av programmets forfatter.
noen vanlige typer kodeinjeksjon er:
-
SQL-Injeksjon. Usikker BEHANDLING AV HTTP-parametere ved konstruksjon av spørringerpå et nettsted kan en angriper kjøre vilkårlige SQL-erklæringerpå et sårbart program.
-
Cross site scripting. Usikker BEHANDLING AV HTTP-parametere kan tillate injeksjon av skadelig JavaScript i et webprogram.
-
Kommando utførelse. Usikker behandling AV HTTP-parametere kan tillate en attackerto run kjøre vilkårlig shell kommandoer på web-serveren.
konsekvensene av en vellykket kodeinjeksjon er generelt katastrofale forsøknadsforfatteren. Risikoen kan reduseres ved å sikre sikker behandling av uklarerte innspill, og ved å praktisere forsvar i dybden for å begrense privilegiene til det løpende programmet.