Auth bypass in Discourse

CVE-2026-26078

Discourse is an open source discussion platform. Prior to versions 2025.12.2, 2026.1.1, and 2026.2.0, when the `patreon_webhook_secret` site setting is blank, an attacker can forge valid webhook signatures by computing an HMAC-MD5 with an empty string as the key. Since the request body is known to the sender, the attacker can produce a matching signature and send arbitrary webhook payloads. This allows unauthorized creation, modification, or deletion of Patreon pledge data and triggering patron-to-group synchronization. This vulnerability is patched in versions 2025.12.2, 2026.1.1, and 2026.2.0. The fix rejects webhook requests when the webhook secret is not configured, preventing signature forgery with an empty key. As a workaround, configure the `patreon_webhook_secret` site setting with a strong, non-empty secret value. When the secret is non-empty, an attacker cannot forge valid signatures without knowing the secret.

Vulnerability class: IDOR (Insecure Direct Object Reference)

Published · last modified .

CVSS v3 metric

CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N.

EPSS exploit prediction

EPSS: 0.004 (30.9th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 31st percentile — 30.9% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2026-26078: held from 0.002 to 0.004.

EPSS over last 30 days · oldest: 0.002 · newest: 0.004 · change: +0.002

Affected products

  • Discourse — versions >= 2026.2.0-latest, < 2026.2.0, >= 2026.1.0-latest, < 2026.1.1, 2026.2.0

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-26078?
CVE-2026-26078 is a high-severity vulnerability in Discourse, classified under Authorization Bypass Through User-Controlled Key. CVSS score: 7.5/10. Published 2026-02-26.
How severe is CVE-2026-26078?
High severity. CVSS v3 base score is 7.5 out of 10.