| 常见场景 | PHP include/require、模板引擎动态路径、插件加载 |
|---|---|
| 危害 | 读取配置与凭据文件、引入可执行内容 |
| 防护 | 白名单映射 page=home 到 home.php;关闭远程包含能力 |
安全改造示例(PHP)
安全改造示例(PHP)
$pages = ['home' => 'home.php', 'about' => 'about.php'];
$key = $_GET['page'] ?? 'home';
if (!isset($pages[$key])) {
http_response_code(404);
exit;
}
include __DIR__ . '/pages/' . $pages[$key];现代 PHP 默认关闭 allow_url_include;仍要关注 phar://、data:// 等包装器与日志包含链路。