Summary
Cross-site Scripting and Open Redirect in Products.ATContentTypes
Workaround
Make sure the image_view_fullscreen page is not stored in the cache.
In Plone:
- Login as Manager and go to Site Setup.
- Go to the 'Caching' control panel. If this does not exist, or 'Enable caching' is not checked, you should normally not be vulnerable.
- Click on the tab 'Caching operations'.
- Under 'Legacy template mappings' locate the ruleset 'Content item view'.
- From the last column ('Templates') remove 'image_view_fullscreen'.
- Click on Save.
Reporter
This vulnerability was responsibly disclosed to the Plone Security Team by Gustav Hansen, F-Secure Consulting. Thank you!
For more information
If you have any questions or comments about this advisory, email us at [email protected]
This is also the correct address to use when you want to report a possible vulnerability.
See our security report policy.
Impact
Plone is vulnerable to reflected cross site scripting and open redirect when an attacker can get a compromised version of the image_view_fullscreen page in a cache, for example in Varnish.
The technique is known as cache poisoning.
Any later visitor can get redirected when clicking on a link on this page.
Usually only anonymous users are affected, but this depends on your cache settings.
Untrusted input is rendered as active markup in a victim's browser, which can run script in their session. Typical impact: session or credential theft, and actions taken as the user.
CVE-2022-23599 has a CVSS score of 4.3 (Medium). The vector is network-reachable, no privileges required, and user interaction required. A CVSS score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether this affects your application depends on whether the vulnerable code is present and reachable in your environment. A fixed version is available (3.0.6); upgrading removes the vulnerable code path.
Affected versions
Security releases
Kodem intelligence
Severity tells you how bad this could be in the worst case. It does not tell you whether you are exposed. Exploitability and impact are functions of runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A vulnerable package can sit in your dependency tree and never run.
Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter. Kodem's runtime-powered SCA identifies whether this CVE is reachable in your applications.
Already deployed Kodem?
See it in your environmentNew to Kodem? Get a demo →Remediation advice
A new version 3.0.6 of Products.ATContentTypes has been released with a fix.
This version works on Plone 5.2 (Python 2 only) and will be included in Plone 5.2.7.
Note that the Products.CMFPlone package has the same problem in the 4.3 series.plone.app.contenttypes has the same problem in all versions, see advisory.
For all unpatched versions of the three packages, you can use the following workaround.
Frequently Asked Questions
- What is CVE-2022-23599? CVE-2022-23599 is a medium-severity cross-site scripting (XSS) vulnerability in Products.ATContentTypes (pip), affecting versions < 3.0.6. It is fixed in 3.0.6. Untrusted input is rendered as active markup in a victim's browser, which can run script in their session.
- How severe is CVE-2022-23599? CVE-2022-23599 has a CVSS score of 4.3 (Medium). This score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether it represents real risk in your environment depends on whether the vulnerable code is present and reachable.
- Which versions of Products.ATContentTypes are affected by CVE-2022-23599? Products.ATContentTypes (pip) versions < 3.0.6 is affected.
- Is there a fix for CVE-2022-23599? Yes. CVE-2022-23599 is fixed in 3.0.6. Upgrade to this version or later.
- Is CVE-2022-23599 exploitable, and should I be worried? Whether CVE-2022-23599 is exploitable in your environment depends on whether the vulnerable code is present and reachable. A CVSS score is a worst-case rating; it does not account for your specific deployment, configuration, or usage patterns. Kodem, an Intelligent Application Security platform, uses runtime intelligence to show which vulnerabilities actually execute in production, so you can focus on the ones that represent real risk. Get a demo
- What actually determines whether CVE-2022-23599 is exploitable, and how bad it is? Exploitability and impact are not fixed properties of a CVE. They depend on runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A high CVSS score on a dependency that never runs is not the same as real risk. Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter.
- How do I fix CVE-2022-23599? Upgrade
Products.ATContentTypesto 3.0.6 or later.