Reflected cross-site scripting in Discourse unsubscribe page
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Active
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- None · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
Discourse from 1.9.0.beta2 before 1.9.0.beta13 contains a reflected cross-site scripting flaw (CWE-79) in the email parameter of the /email/unsubscribed page. Unauthenticated attackers can make the page run JavaScript in a victim's browser when the victim opens a crafted link, because the input is rendered without escaping. The Shadowserver Foundation first observed exploitation on 2023-10-19.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
Description from the CNA
Discourse 1.9.0.beta2 before 1.9.0.beta13 contains a reflected cross-site scripting vulnerability that allows unauthenticated attackers to inject scripts through the email parameter of /email/unsubscribed. Attackers can craft GET requests with SVG onload payloads, which unsubscribed.html.erb renders unescaped via html_safe, executing JavaScript in victims' browsers. Exploitation evidence was first observed by the Shadowserver Foundation on 2023-10-19.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade Discourse to 1.9.0.beta13, the fixed version for this flaw.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
- Fix · CNA Discourse (Discourse) Fixed in 1.9.0.beta13
Timeline
- 2026-10-22 Threatist record created from CVE-2017-20290
- 2026-10-22 Alias added: GHSA-9225-76qg-xfwx
- 2026-11-05 CISA SSVC decision points changed
References
Patch 2
Other 1
More discourse vulnerabilities
- TI-2022-22806 Discourse BBCode plugin vulnerable to arbitrary CSS injection CVSS 3.1CRITICAL 9.8
- TI-2021-19656 Denial of Service in discourse CVSS 3.1MEDIUM 6.8
- TI-2024-36150 Potential Backup file leaked via Nginx in Discourse CVSS 3.1HIGH 7.5
- TI-2021-18002 RCE via malicious SNS subscription payload CVSS 3.1CRITICAL 10.0
- TI-2026-24651 Discourse: Open redirect via `sso_destination_url` cookie in `enter` CVSS 4.0MEDIUM 5.1
- TI-2022-18730 Discourse Patreon vulnerable to improper validation of email during Patreon authentication CVSS 3.1CRITICAL 9.8
Sources
- CVE-2017-20290 · CVE Program
- CVE-2017-20290 · NVD
- FIRST EPSS
- GHSA-9225-76qg-xfwx · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences