← Vulnerability feed

Vulnerability record · CVE-2023-51447 · published 20 February 2024

CVE-2023-51447: Decidim cross-site scripting vulnerability

Decidim · Decidim

Decidim is a participatory democracy framework. Starting in version 0.27.0 and prior to versions 0.27.5 and 0.28.0, the dynamic file upload feature is subject to potential cross-site scripting attacks in case the attacker manages to modify the file names of the records being uploaded to the server. This appears in sections where the user controls the file upload dialogs themselves and has the technical knowledge to change the file names through the dynamic upload endpoint. Therefore I believe it would require the attacker to control the whole session of the particular user but in any case, this needs to be fixed. Successful exploit of this vulnerability would require the user to have successfully uploaded a file blob to the server with a malicious file name and then have the possibility to direct the other user to the edit page of the record where the attachment is attached. The users are able to craft the direct upload requests themselves controlling the file name that gets stored to the database. The attacker is able to change the filename e.g. to `<svg onload=alert('XSS')>` if they know how to craft these requests themselves. And then enter the returned blob ID to the form inputs manually by modifying the edit page source. Versions 0.27.5 and 0.28.0 contain a patch for this issue. As a workaround, disable dynamic uploads for the instance, e.g. from proposals.

5.4 CVSS 3.1 Medium EPSS 0.49% · top 59.6% CWE-79 · Cross-site scripting
5.4CVSS 3.1 base score
0.49%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
12References
17 Jun 2026Last modified by NVD

Description

Decidim is a participatory democracy framework. Starting in version 0.27.0 and prior to versions 0.27.5 and 0.28.0, the dynamic file upload feature is subject to potential cross-site scripting attacks in case the attacker manages to modify the file names of the records being uploaded to the server. This appears in sections where the user controls the file upload dialogs themselves and has the technical knowledge to change the file names through the dynamic upload endpoint. Therefore I believe it would require the attacker to control the whole session of the particular user but in any case, this needs to be fixed. Successful exploit of this vulnerability would require the user to have successfully uploaded a file blob to the server with a malicious file name and then have the possibility to direct the other user to the edit page of the record where the attachment is attached. The users are able to craft the direct upload requests themselves controlling the file name that gets stored to the database. The attacker is able to change the filename e.g. to `<svg onload=alert('XSS')>` if they know how to craft these requests themselves. And then enter the returned blob ID to the form inputs manually by modifying the edit page source. Versions 0.27.5 and 0.28.0 contain a patch for this issue. As a workaround, disable dynamic uploads for the instance, e.g. from proposals.

CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

Track CVE-2023-51447 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.3CVE-2026-23891Decidim cross-site scripting vulnerabilityDecidim is a participatory democracy framework. In versions below 0.30.5 and 0.31.0.rc1 through 0.31.0, a stored code execution vulnerability in the …EPSS 0.36%8.2CVE-2025-65017Decidim information exposure vulnerabilityDecidim is a participatory democracy framework. In versions from 0.30.0 to before 0.30.4 and from 0.31.0.rc1 to before 0.31.0, the private data expor…EPSS 0.31%7.5CVE-2023-34090Decidim information exposure vulnerabilityDecidim is a participatory democracy framework, written in Ruby on Rails, originally developed for the Barcelona City government online and offline p…EPSS 1.3%7.4CVE-2023-48220Decidim vulnerabilityDecidim is a participatory democracy framework. Starting in version 0.4.rc3 and prior to version 2.0.9 of the `devise_invitable` gem, the invites fea…EPSS 0.79%7.1CVE-2023-36465Decidim improper access control vulnerabilityDecidim is a participatory democracy framework, written in Ruby on Rails, originally developed for the Barcelona City government online and offline p…EPSS 0.67%6.5CVE-2026-40869Decidim vulnerabilityDecidim is a participatory democracy framework. Starting in version 0.19.0 and prior to versions 0.30.5 and 0.31.1, a vulnerability allows any regist…EPSS 0.31%6.1CVE-2023-34089Decidim cross-site scripting vulnerabilityDecidim is a participatory democracy framework, written in Ruby on Rails, originally developed for the Barcelona City government online and offline p…EPSS 0.74%6.1CVE-2023-32693Decidim cross-site scripting vulnerabilityDecidim is a participatory democracy framework, written in Ruby on Rails, originally developed for the Barcelona City government online and offline p…EPSS 0.82%

Source: NIST National Vulnerability Database (record CVE-2023-51447), CISA KEV, FIRST EPSS (scores of 2026-10-09). This page is refreshed as NVD updates the record.