Medium severity · published Oct 22, 2026
CVE-2017-20290
Discourse < 1.9.0.beta13 Reflected XSS via /email/unsubscribed
New
6.1
CVSS
0.3%
EPSS
No
On KEV
Description
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.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
Required
Confidentiality
Low
Integrity
Low
Availability
None
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 18% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
DI
Discourse · Discourse
1.9.0.beta2 before 1.9.0.beta13 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2017-20290
CVE.org
https://www.cve.org/CVERecord?id=CVE-2017-20290
github.com
https://github.com/discourse/discourse/commit/6e37f09b19
github.com
https://github.com/discourse/discourse/commit/a6f2533d38
github.com
https://github.com/projectdiscovery/nuclei-templates/blob/main/http/vulnerabilities/other/discourse-xss.yaml
www.vulncheck.com
https://www.vulncheck.com/advisories/discourse-1.9.0-beta13-reflected-xss-via-email-unsubscribed
More from Discourse
9.9
CVE-2025-68662
FinalDestination hostname matching allows SSRF protection bypass
9.8
CVE-2025-53102
Discourse is an open-source community discussion platform
9.8
CVE-2025-48877
Discourse is an open-source discussion platform
9.8
CVE-2023-47121
Discourse is an open source platform for community discussion
9.8
CVE-2021-41163
Discourse is an open source platform for community discussion
