欧宝娱乐app下载地址symfony 1.2.6:安全修复
根据我们的安全策略我们今天发布symfony 1.2.6,以修复sy欧宝娱乐app下载地址mfony核心团队发现的安全问题。
这篇文章包含了对漏洞的描述,以及我们为修复它所做的更改的描述。受影响的symfony版本欧宝娱乐app下载地址都是symfony 1.2发行版和1.3分支。
漏洞描述
新的管理生成器可以通过generator.yml
配置文件。要创建或修改现有记录,管理生成器使用与模型类关联的表单。该表单可以通过形式
,编辑
,新
部分。
的显示
这些部分的条目允许对字段集中的表单字段进行重新分组。如果使用此选项隐藏表单类中定义的某些字段,并且这些字段不是必需的,则可能认为它工作正确。但事实并非如此。作为在文件中说明欧宝体育电话中列出所有表单字段显示
部分。在管理生成器中隐藏表单字段的正确方法是从表单类本身取消设置它们:
[php]类ArticleForm扩展BaseArticleForm{公共函数配置(){//安全删除is_admin字段从表单unset($this['is_admin']);}}
如果没有,恶意用户可能会为他没有权限的字段注入值(因为它不会被方法实现的安全措施捕获)allow_extra_fields
表单的设置)。
总而言之,如果您使用symfony 1.2 (Propel或Doctrine)捆绑的新管理生成器,并删除了某些表单字段,则可能会受到影响欧宝娱乐app下载地址显示
入口generator.yml
无需在相应的表单类中取消设置即可生成节。
决议
的欧宝娱乐app下载地址symfony 1.2.6,新的管理生成器通过自动从表单对象中取消设置隐藏字段(而不是隐藏字段)来防止这样的问题。
如果您受到影响,您可以通过以下方法解决问题:
升级到symfony 1.欧宝娱乐app下载地址2.6;
编辑您的表单类并取消您想要从编辑或新表单中隐藏的字段(如上面的小示例所示)。
symf欧宝娱乐app下载地址ony 1.2.6版本基于1.2.5版本,仅包含安全补丁作为区别。所有其他悬而未决的更改已移至即将到来的更改1.2.7版本编写.
是否发现Symfony存在安全问题?欧宝娱乐app下载地址请将详情发送至www.oldmanjams.com的安全欧宝娱乐app下载地址在我们找到解决方案之前不要公开。
评论
评论截止。
为了确保评论保持相关性,旧帖子将被关闭。
谢谢!
正如其他人所说,这存在于管理生成器中,所以它不是一个巨大的漏洞。不管怎样,插了插头是件好事!
表单有字段“first_name”和“last_name”
展示(_name)
_name partial将“first_name”和“last_name”合并在一行中。
还是我错过了什么?
设置($ this - > widgetSchema [' is_admin ']);
而不是
设置($ this [' is_admin ']);