CVE-2022-31059 json
Discourse Calendar Event names susceptible to Cross-site Scripting
published 2022-06-14 4 y ago modified 2026-06-17 4 mo ago also EUVD-2022-52731
- cvss
- 6.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.8%
- EPSS 0.8% chance of exploitation in 30 days, percentile 55%
- public exploits
- 0
- none known
Summary
Discourse Calendar is a calendar plugin for Discourse, an open-source messaging app. Prior to version 1.0.1, parsing and rendering of Event names can be susceptible to cross-site scripting (XSS) attacks. This vulnerability only affects sites which have modified or disabled Discourse’s default Content Security Policy. This issue is patched in version 1.0.1 of the Discourse Calendar plugin. 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.
Patch / fix
- discourse discourse_calendar 1.0.1
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 18 mo ago
Exploit prediction
0.77% chance of exploitation in the next 30 days, higher than 55% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N |
| NVD | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
| NVD | 2.0 | 2.1 | AV:N/AC:H/Au:S/C:N/I:P/A:N |
Affected products
- discourse discourse-calendar
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/discourse/discourse-calendar/pull/280
issue-tracking, patch, third-party-advisory
-
github.com
/discourse/discourse-calendar/commit/2719b9e81994e961bf8c4e12b4556dc9777dd62f
patch, third-party-advisory
-
github.com
/discourse/discourse-calendar/security/advisories/GHSA-c783-x9vm-xxp5
third-party-advisory
Sources
- CVE List CVE-2022-31059
- NVD CVE-2022-31059
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.