Stored XSS via unescaped chat excerpt tags
Published Mar 17, 2023 · Updated Feb 25, 2025
Cross-site scripting in Discourse tests-passed builds after 3.1.0.beta2 and before 3.1.0.beta3 allows remote attackers to execute script. The replace-emoji helper passed chat excerpt text to htmlSafe without first escaping non-Markdown tags, causing Ember to render attacker-controlled markup. Exploitation requires a user to edit the malicious chat message or reply to it, after which the injected script runs in the Discourse browser origin.
Summary
What happened
Cross-site scripting in Discourse tests-passed builds after 3.1.0.beta2 and before 3.1.0.beta3 allows remote attackers to execute script. The replace-emoji helper passed chat excerpt text to htmlSafe without first escaping non-Markdown tags, causing Ember to render attacker-controlled markup. Exploitation requires a user to edit the malicious chat message or reply to it, after which the injected script runs in the Discourse browser origin.
The record
- CVE
- CVE-2023-26040
- Published
- Mar 17, 2023
- Updated
- Feb 25, 2025
- Vendor
- Discourse
- Product
- Discourse
- Classifications
- CWE-79, T1203
- Attack vector
- network
- Privileges
- unauthenticated
Timeline
How it unfolded
- Mar 17, 2023CVE publishedPublication date reported by the CVE source.
- Feb 25, 2025Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=tests-passed > 3.1.0.beta2, < 3.1.0.beta3
What conditions does exploitation require?
What is affected?
Published CVSS scores
CVSS describes severity. EPSS estimates exploitation probability.
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Weakness, pattern, technique
Public exploit references
No public exploit references are available in this record.
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo