phpsafe 𝕏 GitHub
官方 CA 421DTkQ3TSG3n7F9SkNZj9NxvdFGbypwkctPd2uupump 仅此地址为官方地址。

执行 Shell 命令

严重程度: 严重 CWE-78 OWASP A03:2021 Injection rule: exec

为什么危险

传给 Shell 的输入可以用 ; 或 | 等字符追加命令,让攻击者控制服务器。请严格校验输入,并对每个参数进行转义。

✕ 有漏洞的写法
system('ping -c 1 ' . $_GET['host']);
✓ 安全的写法
$host = $_GET['host'] ?? '';
if (!filter_var($host, FILTER_VALIDATE_IP)) {
    exit('Invalid address');
}
system('ping -c 1 ' . escapeshellarg($host));

修复方法

避免调用 Shell。必须使用时,每个参数都经过 escapeshellarg(),命令名中不可包含用户输入。

扫描我的代码

粘贴文件,PHP Safe 会指出所有符合此规则的代码行。

扫描我的代码 →