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

对请求数据使用 extract()

严重程度: 高 CWE-621 OWASP A03:2021 Injection rule: extract

为什么危险

extract() 会把每个请求字段变成变量,攻击者只需在表单中加一个字段就能覆盖 $is_admin 之类的变量。

✕ 有漏洞的写法
extract($_POST);
if ($is_admin) {
    show_admin_panel();
}
✓ 安全的写法
$name  = trim((string)($_POST['name'] ?? ''));
$email = filter_var($_POST['email'] ?? '', FILTER_VALIDATE_EMAIL);

修复方法

逐个读取所需字段。extract() 允许攻击者覆盖变量。

扫描我的代码

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

扫描我的代码 →