Vulnerability details

CVE-2026-45378

decidim decidim

Decidim: Verification documents can be downloaded through reusable links

CVSS 3.1
7.5High

Official description

Decidim is a participatory democracy framework. Prior to 0.30.9, from 0.31.0 before 0.31.5, and in 0.32.0.rc1 before 0.32.0.rc2, the identity-document verification admin UI embeds verification_attachment blobs through reusable signed Active Storage disk URLs, allowing anyone who obtains a URL to download the scanned document without an authenticated Decidim session until the signature expires. Verification-document images are rendered with variant_url(...), which produces signed /rails/active_storage/disk/... links instead of routing the file through an authorization-checking controller. Because Decidim configures Active Storage service URLs to remain valid for seven days, the URL itself becomes the credential for that period. The affected files are verification_attachment blobs on Decidim::Authorization, and the admin review pages embed those signed URLs directly into the HTML for pending and confirmation views. This issue is fixed in versions 0.30.9, 0.31.5, and 0.32.0.rc2.

CVSS scores

ScoreVersionSourceVector
7.5High 3.1 CVEProject cvelistV5 (CNA) (GitHub_M) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Affected products

VendorProductVersionsSource
decidim decidim < 0.30.9 CVEProject cvelistV5 (CNA)
decidim decidim >= 0.31.0.rc1, < 0.31.5 CVEProject cvelistV5 (CNA)
decidim decidim >= 0.32.0.rc1, < 0.32.0 CVEProject cvelistV5 (CNA)

References and advisories

1
Kolun on Telegram @kolunsec Exploited CVEs, key news and a daily digest Alerts for this product's next CVEsFollow the product to get new vulnerabilities on Telegram.

Details

Published
2026-08-06
Last updated
2026-08-07
State
Published
Assigner (CNA)
GitHub_M

Exploit prediction (EPSS)

0.41%
Probability of exploitation in 30 days
36.1%
Percentile (among all CVEs)

SSVC assessment (CISA)

Automatable
Yes
Exploitation
Proof of concept
Technical impact
Partial

Weaknesses (CWE)

  • CWE-200
    Exposure of Sensitive Information to an Unauthorized Actor