Kaj je ukazna injekcija?

Injekcija ukaza je izkoriščanje šibkosti sistema za pridobitev dostopa do sistema z namenom izvajanja zlonamerne kode, zbiranja uporabniških podatkov in opravljanja drugih dejavnosti. Čeprav obstaja možnost, da je ukazna injekcija benigne narave, običajno ni in lahko predstavlja pomembno varnostno grožnjo. Obstajajo številne rešitve za preprečevanje te dejavnosti v računalniških sistemih.

Ena najpogostejših točk ranljivosti za vbrizgavanje ukazov je obrazec na spletni strani ali v računalniškem sistemu. Obrazci omogočajo ljudem, da vnesejo podatke in jih sistem nato obdela. Če ni omejitev glede vrste podatkov, vnesenih v obrazec, lahko ljudje vnesejo računalniško kodo, ki jo bo sistem prebral in izvedel. Obrazci na spletnih straneh lahko tudi pretvorijo vnos v prikaz drugim uporabnikom, s čimer izpostavijo tudi druge ljudi kodi; nekdo bi lahko na primer pustil zlonamerni skript v komentarjih na spletnem mestu.

Ko se koda izvaja, lahko počne stvari, kot je ljudem omogoči dostop do ozadja računalniškega sistema, vključno z upravnim dostopom, in lahko tudi vsadi viruse in zlonamerno programsko opremo v računalniški sistem. Injekcije ukazov so lahko zasnovane tako, da se same širijo, saj okuženi računalniki komunicirajo z neokuženimi računalniki prek omrežja. Lahko se zelo hitro širijo in lahko na poti povzročijo znatno škodo.

Eden od načinov, da se izognete injekciji ukazov, je oblikovanje obrazcev in drugih vnosov na način, ki je zasnovan tako, da omeji, kaj lahko ljudje vnesejo. V internetnih komentarjih, na primer, verjetno ne bi bilo nobenega legitimnega razloga, da bi uporabniki vnesli skripte, obrazec za komentarje pa bi lahko preprosto zavrnil skript, hkrati pa bi še vedno omogočal HTML za označevanje in oblikovanje. Podobno lahko v računalniškem programu obrazci za vnos zavrnejo vnos določenih znakov, s čimer ljudem preprečijo izvajanje kode v obrazcu.

Potencialno tveganje, ki ga predstavlja ukazna injekcija, je bilo prvič opaženo v 1990. letih prejšnjega stoletja. Številni oblikovalci so se lotili tega problema in pripravili različne načine za preprečevanje ali ustavitev napadov z vbrizgavanjem ukazov. Hekerji so poskušali razviti tudi lastne rešitve, pri čemer so razvili nove in ustvarjalne načine za izvajanje kode prek šibkih točk v računalniškem sistemu. Nekateri ljudje razvijajo nove tehnike iz čisto akademskega interesa in občasno povzročijo opustošenje po naključju, ko njihove raziskave tako rekoč pobegnejo v divjino.