Skip to main content

Discourse EUVDEUVD-2026-17546

| CVE-2026-32113 MEDIUM
URL Redirection to Untrusted Site (Open Redirect) (CWE-601)
2026-03-31 GitHub_M
5.1
CVSS 4.0 · Vendor: GitHub_M
View

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Redirect URL validation
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Impact

The CVSS 4.0 score of 5.1 reflects moderate risk with nuanced attack characteristics. The vector AV:N (network attack vector) and PR:N (no privileges required) indicate broad accessibility, but AC:H (high complexity) and AT:P (passive threat) suggest attackers must either social engineer users into clicking links or exploit persistent cookie mechanisms-not trivial attack execution. The impact ratings (VC:N/VI:N/VA:N/SC:H/SI:H/SA:N) indicate limited direct confidentiality/integrity/availability impact on the Discourse system itself, but significant scope changes and secondary impacts to users (SI:H suggests high session/authentication impacts for victims). This is a phishing/credential harvesting vector rather than system compromise. The EPSS score is not provided, but the combination of high attack vector accessibility, user interaction requirement, and cookie-based delivery suggests lower real-world exploitation probability than the CVSS score alone implies. No KEV confirmation, no public exploit code, and no active exploitation reports lower the practical threat level. Organizations running affected versions should prioritize patching, but this is not a critical incident-response priority. The open redirect tag correctly categorizes the flaw-exploitation chains this with credential theft rather than direct system access.

Exploit ScenarioDerived

An attacker crafts a malicious link containing or leveraging cookie-injection techniques to set the sso_destination_url cookie to a phishing site (e.g., attacker.com/fake-discourse-login). When a legitimate Discourse user clicks the link, the StaticController enter action reads the attacker-controlled cookie and redirects the user to the phishing site without validation. The victim is presented with a credential harvesting page mimicking the Discourse login interface, leading to credential theft. Alternatively, the attacker could use HTTP response splitting or other cookie-injection vectors in multi-tenant environments to poison the cookie in cached responses. Exploitation requires user interaction (clicking a crafted link) but succeeds due to the lack of URL validation, making it suitable for targeted phishing campaigns against Discourse administrators or power users.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Mar 31, 2026

Open redirect vulnerability in Discourse versions 2026.1.0 through 2026.3.0 allows unauthenticated remote attackers to redirect users to arbitrary destinations via a malicious sso_destination_url cookie, exploiting a lack of URL validation in the StaticController enter action. While the cookie is normally set during legitimate DiscourseConnect Provider flows with cryptographic validation, attackers can directly set client-controlled cookies to bypass validation logic. The vulnerability requires user interaction (clicking a crafted link) and persistence of attacker-controlled cookies to exploit, but successful exploitation can be used for credential harvesting or phishing attacks. No public exploit code or active exploitation has been confirmed at time of analysis. Patched versions 2026.1.3, 2026.2.2, and 2026.3.0 are available.

RemediationAI

Upgrade to patched versions immediately: Discourse 2026.1.3 or later (for 2026.1.x installations), 2026.2.2 or later (for 2026.2.x installations), or 2026.3.0 final release or later (for 2026.3.x installations). The upstream fix adds proper URL validation to the sso_destination_url cookie processing logic to ensure redirect destinations are trusted hosts before issuing redirects. No workarounds are available short of patches. Self-hosted administrators should update through their standard deployment process (typically Docker or source rebuild); managed Discourse instances are typically updated automatically by Discourse hosting providers. Consult the GitHub Security Advisory at https://github.com/discourse/discourse/security/advisories/GHSA-378j-ccw4-4fwh and the Discourse Meta post on SSO provider implementation at https://meta.discourse.org/t/using-discourse-as-a-sso-provider/32974 for additional context on SSO flows and validation expectations.

Affected VersionsENISA

discourse 2026.1.0-latest, < 2026.1.3
discourse 2026.3.0-latest, < 2026.3.0
discourse 2026.2.0-latest, < 2026.2.2

Affected Packages

euvd discourse_2026_1_0_latest fix: 2026.1.3
euvd discourse_2026_2_0_latest fix: 2026.2.2
euvd discourse_2026_3_0_latest fix: 2026.3.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 packages in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability stems from improper URL validation in Discourse's StaticController, specifically in the enter action which processes SSO redirects. The underlying root cause is CWE-601 (URL Redirection to Untrusted Site, Open Redirect), where the application reads the client-controlled sso_destination_url cookie and performs a redirect with allow_other_host: true without validating that the destination is a trusted domain. While DiscourseConnect Provider flows normally cryptographically validate SSO payloads before setting this cookie, the application does not distinguish between legitimately-set cookies and attacker-injected ones. This is a classic open redirect vulnerability where the trust boundary is incorrectly placed-the application assumes cookie presence implies prior validation, but cookies are inherently client-controlled and can be forged or modified by attackers. The affected product is Discourse (cpe:2.3:a:discourse:discourse:*:*:*:*:*:*:*:*), an open-source discussion platform written in Ruby on Rails, affecting all 2026.x versions within the specified ranges.

Know when Discourse gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 5.1 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N

Primary rating from Vendor (GitHub_M) · only source for this CVE.

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
Active
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
High
Subsequent system: Integrity
High
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Apr 16, 2026 - 05:29 EUVD
2026.1.3,2026.3.0,2026.2.2
CVE Published
Mar 31, 2026 - 17:39 nvd
MEDIUM 5.1

DescriptionCVE.org

Discourse is an open-source discussion platform. From versions 2026.1.0-latest to before 2026.1.3, 2026.2.0-latest to before 2026.2.2, and 2026.3.0-latest to before 2026.3.0, the enter action in StaticController reads the sso_destination_url cookie and redirects to it with allow_other_host: true without validating the destination URL. While this cookie is normally set during legitimate DiscourseConnect Provider flows with cryptographically validated SSO payloads, cookies are client-controlled and can be set by attackers. This issue has been patched in versions 2026.1.3, 2026.2.2, and 2026.3.0.

Threat Intelligence Overview

EPSS Score
0.0%
Top 88% exploitable
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
CVE-2025-48954 HIGH POC
8.1 Jun 25

Discourse versions prior to 3.5.0.beta6 contain a reflected cross-site scripting (XSS) vulnerability in social login fun

CVE-2022-46162 CRITICAL POC
9.8 Nov 30

discourse-bbcode is the official BBCode plugin for Discourse. Rated critical severity (CVSS 9.8), this vulnerability is

CVE-2026-27934 HIGH POC
8.7 Mar 19

Unauthorized information disclosure in Discourse discussion platform versions prior to 2026.3.0-latest.1, 2026.2.1, and

CVE-2024-47773 HIGH POC
8.2 Oct 08

Discourse is an open source platform for community discussion. Rated high severity (CVSS 8.2), this vulnerability is rem

CVE-2026-26265 HIGH POC
7.5 Feb 26

Discourse versions prior to 2025.12.2, 2026.1.1, and 2026.2.0 contain an insecure direct object reference (IDOR) in the

CVE-2021-3138 HIGH POC
7.5 Jan 14

In Discourse 2.7.0 through beta1, a rate-limit bypass leads to a bypass of the 2FA requirement for certain forms. Rated

CVE-2026-26077 MEDIUM POC
6.5 Feb 26

Unauthenticated attackers can submit forged webhook payloads to multiple email provider integrations in Discourse versio

CVE-2023-38706 MEDIUM POC
6.5 Sep 15

Discourse is an open-source discussion platform. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploi

CVE-2024-53991 MEDIUM POC
5.9 Dec 19

Discourse is an open source platform for community discussion. Rated medium severity (CVSS 5.9), this vulnerability is r

CVE-2025-48877 CRITICAL
9.8 Jun 09

Discourse versions prior to 3.4.4 (stable), 3.5.0.beta5 (beta), and 3.5.0.beta6-dev (tests-passed) contain a critical vu

CVE-2023-47121 CRITICAL
9.8 Nov 10

Discourse is an open source platform for community discussion. Rated critical severity (CVSS 9.8), this vulnerability is

CVE-2022-39355 CRITICAL
9.8 Oct 26

Discourse Patreon enables syncronization between Discourse Groups and Patreon rewards. Rated critical severity (CVSS 9.8

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy