Vad är en kommandoinjektion?
En kommandoinjektion är ett utnyttjande av en systemsvaghet för att få tillgång till systemet i syfte att köra skadlig kod, skörda användardata och delta i andra aktiviteter. Även om det finns en potential för att en kommandoinjektion ska vara godartad är den vanligtvis inte, och den kan utgöra ett betydande säkerhetshot. Det finns ett antal lösningar utformade för att förhindra denna aktivitet i datorsystem.
En av de vanligaste punkterna med sårbarhet för en kommandoinjektion är ett formulär, antingen på en webbsida eller i ett datorsystem. Formulär tillåter människor att mata in data och bearbetas sedan av systemet. Om det inte finns några begränsningar för typen av data som matas in i formuläret är det möjligt för personer att mata in datorkod som systemet kommer att läsa och köra. Formulär på webbsidor kan också konvertera ingången som visas för andra användare och utsätta andra för kod också. till exempel kan någon lämna ett skadligt skript i kommentarerna på en webbplats.
När koden körs kan den göra saker som att ge människor tillgång till backend i ett datorsystem, inklusive administrativ åtkomst, och det kan också plantera virus och skadlig programvara på ett datorsystem. Kommandoinjektioner kan vara utformade för att sprida sig själva, eftersom infekterade datorer interagerar med oinfekterade datorer över ett nätverk. De kan spridas mycket snabbt och kan orsaka betydande skador på vägen.
Ett sätt att undvika en kommandoinjektion är att utforma formulär och andra ingångar på ett sätt som är utformat för att begränsa vad folk kan komma in. Till exempel på internetkommentarer skulle det troligtvis inte vara något berättigat skäl för användare att ange skript, och kommentarformuläret kan helt enkelt avvisa skript, samtidigt som det tillåter HTML för markering och styling. På ett datorprogram kan inputformulärerna på samma sätt vägra inmatningar från vissa tecken och hindra personer från att köra kod i formuläret.
Den potentiella risken som kommandoinjektionen presenterade noterades först på 1990-talet. Många designers har tagit itu med problemet och kommit med olika sätt att förhindra eller stoppa kommandoinjektionsattacker. Hackare har också försökt att utveckla sina egna lösningar, utveckla nya och kreativa sätt att köra kod genom svaga punkter i ett datorsystem. En del människor utvecklar nya tekniker av rent akademiskt intresse och orsakar ibland förödelse av misstag när deras forskning flyr ut i naturen, så att säga.