跳到内容

使用部分路径启动进程 (S607)

源自 flake8-bandit linter。

作用

检查使用部分可执行文件路径启动进程的情况。

为什么这不好?

使用部分可执行文件路径启动进程可能允许攻击者通过调整 PATH 环境变量来执行任意可执行文件。建议使用可执行文件的完整路径。

示例

import subprocess

subprocess.Popen(["ruff", "check", "file.py"])

建议改为

import subprocess

subprocess.Popen(["/usr/bin/ruff", "check", "file.py"])

参考