---
id: CVE-2026-45378
title: Decidim is a participatory democracy framework
summary: >-
  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 Act…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'
cwe:
  - CWE-200
vendor: decidim-verifications
product: decidim-verifications
affected:
  - decidim-verifications < 0.30.9
  - 'decidim-verifications >= 0.31.0.rc1, < 0.31.5'
  - 'decidim-verifications >= 0.32.0.rc1, < 0.32.0'
patched:
  - decidim-verifications 0.30.9
  - decidim-verifications 0.31.5
  - decidim-verifications 0.32.0
published: '2026-08-06'
updated: '2026-09-08'
sourceUpdated: '2026-09-08T20:51:43.490'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-45378'
references:
  - url: 'https://github.com/decidim/decidim/security/advisories/GHSA-3mvf-82qp-8qh5'
    label: security-advisories@github.com
  - url: 'https://github.com/decidim/decidim/security/advisories/GHSA-3mvf-82qp-8qh5'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
  - url: 'https://github.com/decidim/decidim/pull/16680'
  - url: 'https://github.com/advisories/GHSA-3mvf-82qp-8qh5'
tags:
  - nvd
  - ghsa
  - rubygems
epss: 0.00416
epssPercentile: 0.33218
aliases:
  - GHSA-3mvf-82qp-8qh5
ecosystem: rubygems
ingestedAt: '2026-07-13T17:27:58.973Z'
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-45378)

Affected packages:

- `decidim-verifications < 0.30.9`
- `decidim-verifications >= 0.31.0.rc1, < 0.31.5`
- `decidim-verifications >= 0.32.0.rc1, < 0.32.0`

Patched in:

- `decidim-verifications 0.30.9`
- `decidim-verifications 0.31.5`
- `decidim-verifications 0.32.0`

Source: https://github.com/advisories/GHSA-3mvf-82qp-8qh5
