CVE-2023-41048: plone.namedfile vulnerable to Stored Cross Site Scripting with SVG images
3.7
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.65085%
CWE
Published
9/21/2023
Updated
11/9/2023
KEV Status
No
Technology
Python
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| plone.namedfile | pip | < 5.6.1 | 5.6.1 |
| plone.namedfile | pip | >= 6.0.0, < 6.0.3 | 6.0.3 |
| plone.namedfile | pip | >= 6.1.0, < 6.1.3 | 6.1.3 |
| plone.namedfile | pip | >= 6.2.0, < 6.2.1 | 6.2.1 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from improper handling of scaled SVG images. The patches introduced _should_force_download and modified set_headers to enforce download headers based on MIME type checks. Prior to the fix, the ImageScale's index_html and HEAD methods served scaled SVGs without these protections. The test cases added in the commit verify that scale views (e.g., /@@images/.../custom) now force downloads for SVGs, confirming the vulnerable code paths were in the scaling handlers.