安全发布 - CakePHP 1.2.12、1.3.16、2.2.8 和 2.3.4
如果您正在使用 CakePHP 的 PaginatorComponent 且没有白名单排序字段,则应尽快升级以防止可能的 SQL 注入。
CakePHP 1.2.12、1.3.16、2.2.8 和 2.3.4 刚刚发布,修复了分页和 PaginatorComponent 处理排序条件方面的严重问题。在没有排序列白名单的情况下进行分页时,可以通过操作排序条件执行任意 SQL。在接下来的几天里,我们将提供有关漏洞及其利用方式的完整描述,在我们用户有足够时间升级之后。
除了安全修复之外,2.3.4 还包含以下问题的修复
- 添加了对 HTTP 代码 505 的支持。
- 当没有当前路由时,Router::currentRoute() 返回 false。
- 在清除组后写入文件缓存现在按预期工作。
- 当不使用 URL 重写时,使用 fullBase 的资产 URL 现在生成正确。
2.2.8 中除了安全修复之外没有其他修复。
除了安全修复之外,1.3.16 还包含以下问题的修复
- Databases 现在被正确地单数化。
- 使用 saveAll() 保存翻译现在效果更好。
- Oracle listSources() 不再从全局表命名空间读取。
- cake 控制台命令现在可以在 MacOS 上正常工作。
- 混合使用 query[contain] 和 contain() 现在可以正确交互。
除了安全修复之外,1.2.12 还包含以下问题的修复
- 现在在创建缓存文件时设置 umask。
- 现在正确生成多部分电子邮件消息的边界。
- 改进了与 PHP 5.4 的兼容性。
我们建议所有 1.2、1.3 和 2.x 版本系列的用户尽快升级到新版本。