İngilizce’de Os Command Injection olarak geçen, dilimizde pek fazla kullanılmasa da İşletim Sistemi Komut Enjeksiyonu olarak isimlendiren bu zafiyet OWASP’ın yayınladığı en popüler zafiyetlerde ilk sırada yer alan Injection kategorisi içerisindedir. Detaylardan bahsetmeden önce bu zafiyetin ne olduğuna değinilmesi gerekir.

OS Command Injection Nedir?

os komut enjeksiyonu

Tam açılımı Operating System Command Injection, bir web uygulaması zafiyetidir. Bu web uygulamasını çalıştıran sunucuda, işletim sistemi (OS) komutları yürütülmesine olanak tanır. Yani bu işlem Windows’ta CMD, Linux’ta terminal üzerinde komut çalıştırmak gibidir. Makine başındaki birisiyle, saldırganın yapabileceği şeyler neredeyse aynıdır.

 

OS Command Injection Zafiyeti Sistemi Nasıl Etkiler?

OS Komut Enjeksiyonu, sistem üzerinde izinsiz komut çalıştırma yetkisini saldırganlara vermiş olur. Uygulamanın kurulumuna ve onu yürüten işlem yapılandırmasına bağlı olarak, işlemin ayrıcalık düzeyinin artmasına veya saldırganın tam etkileşimine izin veren uzak bir ters kabuk oluşturmasına neden olabilir. Aslında saldırgan sistemin izin verdiği ölçüde hemen hemen her şeyi yapabilir. Bu yüzden çok tehlikeli ve ciddi zararlara yol açan bir zafiyettir. 

 

OS Command Injection Zafiyeti Nasıl Tespit Edilir?

OS Command Injection sızma testleri sırasında ilk kontrol edilen zafiyetlerden biridir. Eğer Sızma Testi nedir diye soruyorsanız buradaki makaleye göz atıp Sızma Testleri hizmetimizden yararlanabilirsiniz

Peki, bu zafiyeti nasıl tespit edebiliriz? Uygulamanın bir komutu yürütmesi için istemci girdisi kullanılır. Alınan çıktıya göre durum değerlendirilir böylece OS Command Injection zafiyeti tespit edilebilir. 

 

OS Command Injection Nasıl Önlenir?

Bu zafiyetin istismarını önlemek için uygulanabilecek bazı teknikler bulunmaktadır; 

  • Girdi formatının kontrol edilmesi. (Örnek: sayısal ifadeler, kelime sayısı vb.)
  • Girdilerin kontrolü için white-list oluşturulması yani sadece izin verilen kelimelerin kullanılabilmesi
  • Header fonksiyonunun kullanımından sonra Die fonksiyonunun kullanılması, böylece sonraki girdilerin geçersiz kalması
  • Girdinin yalnızca alfanumerik karakterlerden oluşması yani sadece rakam ve harf kullanılması

Ayrıca siber güvenlik danışmanlığı almak, düzenli olarak sızma testi (pentest) yaptırmak sizleri bu saldırılardan, bilişim suçlularından koruyacaktır. Unutmayın erken teşhis hayat kurtarır.