Skip to main content

Various Plone hotfixes, 2020-01-21

Project description

Plone hotfix, 2020-01-21

This hotfix fixes several security issues:

  • Privilege escalation when plone.restapi is installed. Reported and fixed by Lukas Graf and Niklaus Johner.

  • An open redirection on the login form and possibly other places where redirects are done. The isURLInPortal check that is done to avoid linking to an external site could be tricked into accepting malicious links. Reported by Damiano Esposito.

  • Password strength checks were not always checked. Reported by Ben Kummer.

  • You might be able to PUT (overwrite) some content without needing write permission. This seems hard to do in practice. This fix is only needed when you use plone.app.contenttypes. Reported and fixed by Alessandro Pisa.

  • SQL quoting in DTML or in connection objects was insufficient, leading to possible SQL injections. This is a problem in Zope. If you use Zope without Plone, this hotfix should work for you too. Reported and fixed by Michael Brunnbauer and Michael Howitz.

  • Cross Site Scripting (XSS) in the title field on plone 5.0 and higher. Reported by Marcos Valle.

Compatibility

This hotfix should be applied to the following versions of Plone:

  • Plone 5.2.1 and any earlier 5.2.x version

  • Plone 5.1.6 and any earlier 5.x version

  • Plone 4.3.19 and any earlier 4.x version

The hotfix is officially supported by the Plone security team on the following versions of Plone in accordance with the Plone version support policy: 4.3.19, 5.0.10, 5.1.6 and 5.2.1.

On Plone 4.3, 5.0 and 5.1 the hotfix is officially only supported on Python 2.7. On Plone 5.2.X it is supported on Python 2.7 and Python 3.6/3.7.

Python 2.6 should work, and earlier Plone 4 versions should work too, but this has not been fully tested.

The fixes included here will be incorporated into subsequent releases of Plone, so Plone 4.3.20, 5.1.7, 5.2.2 and greater should not require this hotfix.

Installation

Installation instructions can be found at https://plone.org/security/hotfix/20200121

Q&A

Q: How can I confirm that the hotfix is installed correctly and my site is protected?

A: On startup, the hotfix will log a number of messages to the Zope event log that look like this:

2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied sql_quote patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied in_portal patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied password_validation patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied pac patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied content patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied layout patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Applied restapi_local_roles patch
2020-01-21 13:10:26 INFO Products.PloneHotfix20200121 Hotfix installed

The exact number of patches applied, will differ depending on what packages you are using. If a patch is attempted but fails, it will be logged as an error that says “Could not apply”. This may indicate that you have a non-standard Plone installation. Please investigate, and mail us the accompanying traceback if you think it is a problem in the hotfix.

Q: How can I report problems installing the patch?

A: Contact the Plone security team at security@plone.org or visit the Gitter channel at https://gitter.im/plone/public and the forum at https://community.plone.org

Q: How can I report other potential security vulnerabilities?

A: Please email the security team at security@plone.org rather than discussing potential security issues publicly.

Changelog

1.1 (2020-02-11)

  • Improve the sql_quote fix. For details and discussion, see DocumentTemplate. If you are not using SQL in your website you do NOT need to upgrade. (You can if you want to.) Default Plone does not need it. Upgrading to this version is especially recommended when you use Postgres. Note that RelStorage is not affected. Specific changes:

    • In sql_quote no longer escape double quotes and backslashes by doubling them: on MySQL this was fine, but on Postgres valid double quotes and backslashes would actually end up twice in the database.

    • In sql_quote remove the special \x1a NUL character and the carriage return \r. This change is good for both MySQL and Postgres.

1.0 (2020-01-21)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Products.PloneHotfix20200121-1.1.tar.gz (17.9 kB view details)

Uploaded Source

Built Distribution

Products.PloneHotfix20200121-1.1-py2.py3-none-any.whl (28.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file Products.PloneHotfix20200121-1.1.tar.gz.

File metadata

  • Download URL: Products.PloneHotfix20200121-1.1.tar.gz
  • Upload date:
  • Size: 17.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/42.0.2 requests-toolbelt/0.8.0 tqdm/4.19.6 CPython/2.7.17

File hashes

Hashes for Products.PloneHotfix20200121-1.1.tar.gz
Algorithm Hash digest
SHA256 9f4c55f75aa9a2e15d778a514cf38d7134fe248eabc364f75680941194f5b1df
MD5 f819eaaf60643a794be73d96d9c9bb72
BLAKE2b-256 b3f74054119d5a9cd92d274e5d86ee81761792ae7a3e0a5e1a0a01e78e139c3e

See more details on using hashes here.

File details

Details for the file Products.PloneHotfix20200121-1.1-py2.py3-none-any.whl.

File metadata

  • Download URL: Products.PloneHotfix20200121-1.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 28.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/42.0.2 requests-toolbelt/0.8.0 tqdm/4.19.6 CPython/2.7.17

File hashes

Hashes for Products.PloneHotfix20200121-1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 78fcd2132df95ba290d2469d552a7c4421ff5c6b66fad59e19e3bc1b5f179c6a
MD5 289652d191367cdb098e2c773cb7340e
BLAKE2b-256 ee2b40106603d4d22fa3189bdcfe396c93ddccfb225be5e851f4db4bc49ebc7b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page