Vulnerability · Published Aug 28, 2026 · Assigned by GitHub_M
CVE-2026-55248plone.app.portlets: Denial of service via RSS feed portlet
Critical 9.1
In plain English
A critical-severity uncontrolled resource consumption in plone.app.portlets from plone. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 38% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
plone.app.portlets provides portlets and a Plone-specific user interface for plone.portlets. Prior to 5.0.8, 6.0.4, and 7.0.2, a member who can add an RSS portlet can set its feed URL to a very large response, causing src/plone/app/portlets/portlets/rss.py to download and retain excessive data in memory and deny service. The same RSS URL handling accepts internal hosts, IP addresses, single-word domains, and explicit ports, allowing server-side requests that can probe internal network services and open ports. A malicious feed item can also supply a JavaScript URL that is retained as the item link and can execute script when used by a victim. The affected logic includes _rss_feed_url_validator, _normal_url_validator, RSSFeed._retrieveFeed, RSSFeed._buildItemDict, and the FEED_DATA in-memory cache. This issue is fixed in versions 5.0.8, 6.0.4, and 7.0.2.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | plone-app-portlets | 7.0.2 | GHSA-x5g3-w747-2h8q |
| PyPI | plone-app-portlets | 6.0.4 | GHSA-x5g3-w747-2h8q |
| PyPI | plone-app-portlets | 5.0.8 | GHSA-x5g3-w747-2h8q |
| PyPI | plone-app-portlets | 5.0.8, 6.0.4, 7.0.2 | PYSEC-2026-3884 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| plone | plone.app.portlets | < 5.0.8>= 6.0.0, < 6.0.4>= 7.0.0, < 7.0.2 |
Weakness: CWE-400 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:H
References
- https://github.com/plone/plone.app.portlets/security/advisories/GHSA-x5g3-w747-2h8q x_refsource_CONFIRM
- https://github.com/plone/plone.app.portlets/commit/09da52ef7b297daa8e0cfd2361e47c37d9b073ad x_refsource_MISC
- https://github.com/plone/plone.app.portlets/commit/9f16b6fb10211916686c6c346ea174bf517e3fbd x_refsource_MISC
- https://github.com/plone/plone.app.portlets/commit/a3b2c2887165b308cd915cbb87b8276f90a76680 x_refsource_MISC
- https://github.com/plone/plone.app.portlets/commit/df5e256baee55083cbd6b9a2623675d4cb26b6cd x_refsource_MISC