Categories
CVE-2026-45414 high CVSS 8.5

Authentication Bypass in decidim (CVE-2026-45414)

Summary

Authentication bypass in decidim (CVE-2026-45414). Confidential information can be exposed externally. Exploitable via Host header. Mitigation: upgrade to 0.32.0 or later.

Original description

The description as published by the source.

Description

A JWT issued to an Org 1 account is accepted on the Org 2 API and can read the admin-only GraphQL participantDetails field for an Org 2 participant. The same trust-boundary problem also affects API-user authentication: an Org 1 API user can use a JWT on the Org 1 host and replay that JWT to the Org 2 API to read Org 2 participant personal data and reach Org 2's proposal.answer mutation path.

Technical description

The current host selects the Decidim organization context, but JWT-backed API authentication is not sufficiently bound to
that host organization. As a result, the API can process a request in Org 2's context while still trusting an authenticated
principal from Org 1.

Reproduction steps:

  1. Use an API key provided by the system administrator that is assigned to organization 1 to create the JWT token or
    get the JWT token shown in the response when logged in as the organization admin.

  2. When using this JWT token it is possible to retrieve details from other organisations. Notice the change of the host header in the request below to that of another tenant org2.localhost:3001

Note that using a participant-generated JWT did not allow showing these results.

Impact

A JWT issued for one organization can be replayed successfully against another organization's API and used to retrieve sensitive details from that organization.

Patches

See https://github.com/decidim/decidim/pull/16673 and https://github.com/decidim/decidim/pull/16756…

Source: GitHub Security Advisories (Global) NVD GitHub Advisory

Auto-generated summary

Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.

A vulnerability tracked as CVE-2026-45414 has been found in decidim.
Attackers can target a specific entry point like Host header over the network to misuse the product.
Confidential information can be exposed externally. CVSS score: 8.5/10.
What to do: upgrade decidim to 0.32.0 or later.
If unsure, ask your IT team or search "decidim CVE-2026-45414" on the vendor's site.

CVE-2026-45414 (decidim) — CWE-287 / CVSS v3 8.5
Attack vector: remote (network-reachable) / no user interaction
Attack surface: Host header / participantDetails / proposal.answer
Patched: 0.32.0 — apply immediately
Workaround: Disable JWT credentials on system panel (/system)
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.

❓ What is the problem

Authentication bypass (CWE-287) exists in decidim. Attackers reach the vulnerable code path via Host header.

📍 Affected scope

Check the vendor advisory for the affected versions of decidim. Attack surface: Host header / participantDetails / proposal.answer.

🔥 Severity

Severity: High (CVSS 8.5/10). Confidential information can be exposed externally.

🔧 How to fix

Update to 0.32.0.

🛡️ Workaround

Workaround: Disable JWT credentials on system panel (/system)

🔍 Detection

Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'decidim' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.

Response actions

Concrete steps and command examples for SOC/SRE teams to execute in order

  1. 1
    Identify exposure identify
    grep -r 'decidim' . | grep -v node_modules

    リポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で decidim を grep し、稼働しているサービス・バージョンを把握する。

  2. 2
    Apply temporary workaround mitigate
    Disable JWT credentials on system panel (`/system`)

    パッチが適用されるまでの応急処置として、Disable JWT credentials on system panel (/system) を実施。回避策の副作用 (機能低下) を確認した上で。

  3. 3
    Apply patch patch
    Upgrade decidim to 0.32.0

    ステージング環境で 0.32.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。

  4. 4
    Post-deployment verification verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。

Affected packages

rubygems decidim
[{"type":"ECOSYSTEM","events":[{"introduced":"0.32.0.rc1"},{"fixed":"0.32.0"}]}]

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details