zopefoundation/products.cmfcore · Security

Products.CMFCore unauthenticated denial of service and crash via unchecked use of input with Python's marshal module

GHSA ID
GHSA-4hpj-8rhv-9x87
CVE ID
CVE-2023-36814
Severity
high
Published
Updated
CVSS
7.5 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v3
7.5 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4
8.7 · CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Description

Impact

The use of Python's marshal module to handle unchecked input in a public method on PortalFolder objects can lead to an unauthenticated denial of service and crash situation. The code in question is exposed by all portal software built on top of Products.CMFCore, such as Plone. All deployments are vulnerable.

Patches

The code has been fixed in Products.CMFCore version 3.2.

Workarounds

Users can make the affected decodeFolderFilter method unreachable by editing the PortalFolder.py module in Products.CMFCore by hand and then restarting Zope. Go to line 233 of PortalFolder.py and remove both the @security.public decorator for decodeFolderFilter as well as the method's entire docstring. This is safe because the method is not actually used by current code.

References

Credits

Thanks go to Nicolas VERDIER from onepoint.

For more information

If you have any questions or comments about this advisory:

CWEs

References