Discourse
CVE-2026-33411
MEDIUM
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
2DescriptionGitHub Advisory
Discourse is an open-source discussion platform. Versions prior to 2026.3.0-latest.1, 2026.2.1, and 2026.1.2 have a potential stored XSS in topic titles for the solved posts stream. Versions 2026.3.0-latest.1, 2026.2.1, and 2026.1.2 contain a patch. As a workaround, ensure that the Content Security Policy is enabled, and has not been modified in a way which would make it more vulnerable to XSS attacks.
AnalysisAI
A stored cross-site scripting (XSS) vulnerability exists in Discourse's solved posts stream feature where unsanitized topic titles can be persisted and executed in the browser context of authenticated users. The vulnerability affects Discourse versions prior to 2026.3.0-latest.1, 2026.2.1, and 2026.1.2, allowing authenticated attackers to inject malicious JavaScript that executes in the browsers of other users viewing the affected topics. While the CVSS score of 5.4 reflects moderate severity with low impact scope and no availability impact, the attack requires user interaction indirectly through viewing a crafted topic title, making real-world exploitation limited to scenarios where attackers have post creation privileges.
Technical ContextAI
This vulnerability represents a classic stored XSS flaw (CWE-79: Improper Neutralization of Input During Web Page Generation) within Discourse's topic rendering pipeline, specifically in the solved posts stream feature. The root cause stems from insufficient input validation and output encoding of topic titles before they are stored in the database and subsequently rendered in the HTML response. Discourse (cpe:2.3:a:discourse:discourse:*:*:*:*:*:*:*:*) is a Node.js-based discussion platform that dynamically generates topic displays; when topic titles containing malicious JavaScript payloads are not properly sanitized during creation or display, the JavaScript executes with the privileges of the viewing user's session. The solved posts stream is a filtered view that aggregates topics marked as solved, making it a concentrated attack surface for XSS injection.
RemediationAI
Immediately upgrade Discourse to version 2026.3.0-latest.1, 2026.2.1, or 2026.1.2 or later depending on your current version track, following the official upgrade documentation at the GitHub security advisory (https://github.com/discourse/discourse/security/advisories/GHSA-j3mm-ghh2-83x2). As an interim workaround while patching is being planned, ensure that Content Security Policy (CSP) is enabled in your Discourse configuration and has not been relaxed to include unsafe-inline or overly permissive script-src directives, which would amplify XSS impact. Additionally, monitor topic creation activity for suspicious titles containing script tags or event handlers, and consider restricting topic creation permissions to trusted user groups until patching is complete. After patching, audit the database for any existing malicious topic titles in the solved posts stream and remove or sanitize them as needed.
Discourse versions prior to 3.5.0.beta6 contain a reflected cross-site scripting (XSS) vulnerability in social login fun
Discourse is an open source platform for community discussion. Rated high severity (CVSS 8.2), this vulnerability is rem
In Discourse 2.7.0 through beta1, a rate-limit bypass leads to a bypass of the 2FA requirement for certain forms. Rated
Discourse is an open-source discussion platform. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploi
Discourse is an open source platform for community discussion. Rated medium severity (CVSS 5.9), this vulnerability is r
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
Discourse is an open source platform for community discussion. Rated critical severity (CVSS 9.8), this vulnerability is
Discourse is an open source platform for community discussion. Rated critical severity (CVSS 9.8), this vulnerability is
Discourse is an open source platform for community discussion. Rated critical severity (CVSS 9.1), this vulnerability is
Stored cross-site scripting in the Discourse discussion platform allows a low-privileged registered user to set a malici
Discourse is a platform for community discussion. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit
Unauthorized information disclosure in Discourse discussion platform versions prior to 2026.3.0-latest.1, 2026.2.1, and
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today