跳转到主要内容

各种Plone修复,2016-11-29

项目描述

Plone修复,2016-11-29

此修复解决了几个安全问题

  • 用户可以复制包含私有文档的公共文件夹,并能够在复制品中查看该文档。

  • 匿名用户可以通过直接访问小部件来查看网站的一些设置。这是针对Plone中广泛使用的z3c.form小部件。

  • 私有文档上的评论部分可见于实时搜索。如果结果包含此类评论,则将拒绝访问搜索结果页面。这是针对Plone 4.1中引入的plone.app.discussion评论系统。

其他修复

  • 相关:发现了DTML中的漏洞,可能导致跨站脚本攻击(XSS)。此漏洞由本修复解决,因为这是不可能的。攻击利用很难:攻击者需要输入键盘上通常无法输入的字符。在Plone 4.1及以上版本中,您应使用今天发布的DocumentTemplate 2.13.3。在Plone 4.0及以下版本中,DocumentTemplate包含在Zope2代码中,将不会获得更新发布。

  • Zope安全团队修复了一个问题,即SQL字符串引号可能无法正确处理。ZSQLMethods产品可在所有Plone网站上使用,但核心代码没有使用它。攻击者要利用这个问题非常困难:攻击者需要输入键盘上无法正常输入的字符。在Plone 4.0及以上版本中,您应使用几周前发布的Products.ZSQLMethods 2.13.5。在Plone 3.3及以下版本中,Products.ZSQLMethods包含在Zope2代码中,不会进行更新发布。

需要手动步骤

关于私有文档注释的安全问题需要在Plone配置中进行更改。您需要以管理员的身份登录,并在Plone网站根目录下调用/@@apply-hotfix20161129。这将显示一个表单。点击表单上的按钮,Plone将更改注释的工作流,并重新索引注释的安全设置。

关于“更新安全设置”限制的警告

作为Plone管理员,您可能已经知道您可以更改现有工作流的设置。在Zope管理界面中,您可以访问portal_workflow,并更改各种状态下的大量权限设置。完成操作后,您点击“更新安全设置”按钮,Plone将遍历数据库并将更改应用于单个内容项。这通常意味着:更新目录中的信息,以便仅在用户被允许查看时,项目才会在搜索结果页或其他列表中显示。

对于评论,这不起作用:它们不会通过此程序被发现。因此,如果您在工流程中对评论进行了更改,使其对所有人不可见,它们可能仍然会在搜索中显示。

这可能在Plone的未来版本中得到修复。作为解决方案,一旦您已保存工作流更改,您可以使用/@@apply-hotfix20161129上的表单。

请注意,在Plone UI中,您可以在内容设置控制面板(或在早期Plone版本中的“类型”)中选择类型的不同工作流。这对于评论也适用,包括更新安全设置。

兼容性

此热修复应应用于以下版本的Plone

  • Plone 5.0.6和任何早于5.x的版本

  • Plone 4.3.11和任何早于4.x的版本

  • Plone的任何旧版本

根据Plone版本支持政策,Plone安全团队官方支持以下版本的Plone:4.0.10、4.1.6、4.2.7、4.3.11和5.0.6。但是,它也在Plone的旧版本上进行了一些测试。这里包含的修复将被纳入Plone的后续版本中,因此Plone 4.3.12、5.0.7及更高版本不应需要此热修复。

安装

安装说明可在https://plone.org/security/hotfix/20161129找到

自动测试

如果您为您的代码编写了自动测试,并且想与这个热修复一起运行以查看是否有回归,您应确保热修复包含在您的测试设置中。使用plone.app.testing,在您的测试层固定中应如下所示

def setUpZope(self, app, configurationContext):
    from plone.testing import z2
    z2.installProduct(app, 'Products.PloneHotfix20161129')

使用旧式的Products.PloneTestCase应如下所示

from Testing import ZopeTestCase
ZopeTestCase.installProduct('PloneHotfix20161129', quiet=1)

Q&A

问:我如何确认热修复已正确安装并且我的网站受到保护?

答:在启动时,热修复将在Zope事件日志中记录多条消息,如下所示

2016-11-29 08:42:11 INFO Products.PloneHotfix20161129 Applied publishing patch
2016-11-29 08:42:11 INFO Products.PloneHotfix20161129 Applied copy patch
2016-11-29 08:42:11 INFO Products.PloneHotfix20161129 Applied comments patch
2016-11-29 08:42:11 INFO Products.PloneHotfix20161129 You should call /@@apply-hotfix20161129 on all Plone Sites that have comments enabled.
2016-11-29 08:42:11 INFO Products.PloneHotfix20161129 Hotfix installed

应用补丁的确切数量将根据您使用的软件包而有所不同。如果尝试应用补丁但失败,则将记录为警告,表示“无法应用”。这可能表明您有一个非标准化的Plone安装。

问:我如何报告安装补丁的问题?

答:请联系Plone安全团队security@plone.org,或访问freenode IRC上的#plone频道。

问:我如何报告其他潜在的安全漏洞?

A: 请通过电子邮件向安全团队发送邮件至 security@plone.org 而不是公开讨论潜在的安全问题。

变更日志

1.2 (2016-11-29)

  • 处理了多语言网站上并非所有评论都被重新索引的问题。[maurits]

1.1 (2016-11-29)

  • 处理了如果评论在目录中但已从网站上移除,则评论升级会失败的问题。只有在你运行评论补丁时遇到 AttributeError 错误时,才需要升级到此补丁版本。[vangheem]

1.0 (2016-11-29)

  • 初始发布

项目详情


下载文件

下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分布

Products.PloneHotfix20161129-1.2.tar.gz (15.2 kB 查看散列值)

上传时间 源代码

由以下机构支持