JP1223C¶
Проверка вызовов команд через системную оболочку shell¶
Создание внешних процессов через утилиты операционной системы требует повышенного контроля экранирования входных параметров. Вызов оболочки вызывает системную программу по выбору пользователя и зависит от платформы. Представляет собой уязвимость при наличии неэкранированного ввода команды, или невалидированного ввода фиксированной команды.
Пример небезопасного использования¶
Проверяемые методы¶
os.system
os.popen
os.popen2
os.popen3
os.popen4
popen2.popen2
popen2.popen3
popen2.popen4
popen2.Popen3
popen2.Popen4
commands.getoutput
commands.getstatusoutput
subprocess.getoutput
subprocess.getstatusoutput