环境:春秋云境“免费空间”授权实验靶场。历史实例已关闭。
1. 基本信息
| 项目 | 内容 |
|---|---|
| CVE | CVE-2022-22909 |
| 产品 | Hotel Druid 3.0.3 |
| 注入位置 | 创建房间时的名称字段 |
| 执行入口 | selectappartamenti.php |
| Flag | flag{8187389f-5750-4118-b275-c134eb41dfab} |
2. 原理与复现
创建房间时,名称内容进入后续 PHP 表达式/模板处理且缺少安全编码。题目环境先补写初始化缺失的 2026 年后配置/数据,再在名称中注入 PHP 表达式,使 selectappartamenti.php 执行 cat /flag。
代表性链路:
创建房间 -> 名称字段写入 PHP 表达式 -> 初始化缺失数据 -> 访问 selectappartamenti.php -> 执行 cat /flag
注入语义示意:
<?php system('cat /flag'); ?>
执行响应得到:
flag{8187389f-5750-4118-b275-c134eb41dfab}
3. 修复建议与验证
对房间名称做上下文安全编码,禁止把数据拼进 PHP 代码;升级受影响版本并清理可写模板/配置。Flag 与平台记录一致,已提交并关闭靶场。原始表单、初始化请求和响应未保存,截图已保存到 images 目录并由平台详情页复核。
截图证据


