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

使用 eval() 执行代码

严重程度: 严重 CWE-95 OWASP A03:2021 Injection rule: eval

为什么危险

eval() 会执行收到的任何 PHP 代码。只要字符串中有一部分来自请求,攻击者就能在你的服务器上运行自己的代码。

✕ 有漏洞的写法
$result = eval('return ' . $_POST['formula'] . ';');
✓ 安全的写法
// Allow only known operations
$ops = [
    'add' => fn($a, $b) => $a + $b,
    'sub' => fn($a, $b) => $a - $b,
];
$op = $ops[$_POST['op'] ?? ''] ?? null;
$result = $op ? $op((float)$_POST['a'], (float)$_POST['b']) : null;

修复方法

切勿将字符串当作代码执行,改用明确逻辑、映射表或安全解析器。

扫描我的代码

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

扫描我的代码 →