Decidim 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 user name field allows a low-privileged attacker to execute arbitrary code in the context of any user who passively visits a comment page, resulting in high confidentiality and integrity impact across security boundaries. This issue has been fixed in versions 0.30.5 and 0.31.1.
An attacker with basic privileges (e.g., a regular platform user) places a malicious payload in the username field. Since this data is not properly sanitized before display, the payload is permanently stored in the database and rendered as code in the browser of anyone visiting a page containing that user's comments. The exploit works passively — the victim does not need to take any action beyond loading the page. This mechanism allows bypassing security boundaries and affects both resources in the context of the attacked user and system resources.
An attacker can hijack the session of any user visiting a page with comments, gain access to sensitive data, and make unauthorized modifications to content or configuration — resulting in high impact on confidentiality and integrity of both user data and system resources.
Decidim should be updated to version 0.30.5 or 0.31.1, in which the issue has been fixed. Patches are available in the vendor's official GitHub repository at the addresses indicated in the references.
Decidim in versions below 0.30.5 and versions 0.31.0.rc1 through 0.31.0 inclusive
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:L/SC:H/SI:H/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XDecidim
APPDecidim< 0.30.50.31.0 – 0.31.1 (excl.)
Related vulnerabilities
Decidim: nieprawidłowe uprawnienia w module szablonów ankiet
Decidim is a participatory democracy framework. Starting in version 0.19.0 and prior to versions 0.30.5 and 0....
Decidim is a participatory democracy framework. In versions from 0.30.0 to before 0.30.4 and from 0.31.0.rc1 t...
Decidim is a participatory democracy framework. The meeting embeds feature used in the online or hybrid meetin...
Decidim is a participatory democracy framework, written in Ruby on Rails, originally developed for the Barcelo...