OS Command İnjection Açığı Nedir Nerede Bulunur ?
Bazı durumlarda web uygulamalarının işletim sistemi ile iletişime geçmesi gerekmektedir. Kullanıcılar istek (request) web uygulaması (response) döndürür buna request response cycle denir. Eğer 60 saniyede bu işlem bitmiyorsa arkaplanda işlemler gerçekleşir. İşte bu arkaplandaki işlemler işletim sistemi sayesinde yapılır yani burada asenkron yapısı vardır. Dedim ya bazı işlemler için komut çalıştırmak gereklidir örneğin siz bir sosyal ağ platformundaki bütün fotoğraflarınızı, arşivinizi indirmek istiyorsunuz burada arkaplanda olan işlem olacak komut satırında bir komut yazılacak ve en sonunda size mail gibi bişey gelecek. İşte command injection açığı bu tür olan her yerde bulunabilir. Bazı Dillerde Komut Çalıştırma;
Python ;
import subprocess
subprocess.call(["ls", "-la"])
PHP ;
system("ls -la")
Java ;
getRunTime()
import subprocess
subprocess.call(["ls", "-la"])
PHP ;
system("ls -la")
Java ;
getRunTime()
[ame]https://www.youtube.com/watch?v=955dqWhW4BI&ab_channel=Pwdec[/ame]
[ame]https://www.youtube.com/watch?v=NLgbyMFiPp4&ab_channel=Pwdec[/ame]