Vulnerability Details : CVE-2023-37467
Discourse is an open source discussion platform. Prior to version 3.1.0.beta7 of the `beta` and `tests-passed` branches, a CSP (Content Security Policy) nonce reuse vulnerability was discovered could allow cross-site scripting (XSS) attacks to bypass CSP protection for anonymous (i.e. unauthenticated) users. There are no known XSS vectors at the moment, but should one be discovered, this vulnerability would allow the XSS attack to bypass CSP and execute successfully. This vulnerability isn't applicable to logged-in users. Version 3.1.0.beta7 contains a patch. The stable branch doesn't have this vulnerability. A workaround to prevent the vulnerability is to disable Google Tag Manager, i.e., unset the `gtm container id` setting.
Vulnerability category: Cross site scripting (XSS)
Products affected by CVE-2023-37467
- cpe:2.3:a:discourse:discourse:1.1.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta6b:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.1.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.2.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.3.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta12:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.4.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta12:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta13:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta13b:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta14:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.5.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta12:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.6.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.7.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta12:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta13:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.8.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta12:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta13:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta14:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta15:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta16:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta17:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:1.9.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.0.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.1.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.1.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.1.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.1.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.1.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.1.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.2.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.3.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.4.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.5.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.6.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.6.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.6.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.6.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.6.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.6.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.7.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.8.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta10:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta11:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta12:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta13:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta14:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta4:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta6:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta7:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta8:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:2.9.0:beta9:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.0.0:beta15:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.1.0:beta1:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.0.0:beta16:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.1.0:beta2:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.1.0:beta3:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.1.0:beta5:*:*:beta:*:*:*
- cpe:2.3:a:discourse:discourse:3.1.0:beta6:*:*:beta:*:*:*
Exploit prediction scoring system (EPSS) score for CVE-2023-37467
0.05%
Probability of exploitation activity in the next 30 days
EPSS Score History
~ 21 %
Percentile, the proportion of vulnerabilities that are scored at or less
CVSS scores for CVE-2023-37467
Base Score | Base Severity | CVSS Vector | Exploitability Score | Impact Score | Score Source | First Seen |
---|---|---|---|---|---|---|
5.4
|
MEDIUM | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
2.3
|
2.7
|
NIST | |
6.8
|
MEDIUM | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N |
1.6
|
5.2
|
GitHub, Inc. |
CWE ids for CVE-2023-37467
-
The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.Assigned by: nvd@nist.gov (Primary)
-
Nonces should be used for the present occasion and only once.Assigned by: security-advisories@github.com (Secondary)
References for CVE-2023-37467
-
https://github.com/discourse/discourse/security/advisories/GHSA-gr5h-hm62-jr3j
CSP nonce reuse vulnerability for anonymous users · Advisory · discourse/discourse · GitHubVendor Advisory
-
https://github.com/discourse/discourse/commit/0976c8fad6970b6182e7837bf87de07709407f25
SECURITY: Don't reuse CSP nonce between anonymous requests · discourse/discourse@0976c8f · GitHubPatch
Jump to