Discourse: Private Chat Threat Message Disclosure via Chat Onebox Channel/Threat ID Mismatch
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- Low · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-639.
Summary
Discourse is an open-source discussion platform. Prior to 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0, plugins/chat/lib/chat/onebox_handler.rb resolves Chat::Thread by route thread_id independently of the route channel_id before checking whether the user can preview the selected chat channel. An authenticated user can pair a public channel ID with a private thread ID in a /onebox.json request and obtain private thread message content. This issue is fixed in versions 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0.
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
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| discourse | discourse | before 2026.1.6; 2026.5.0-latest to before 2026.5.2; 2026.6.0-latest to before 2026.6.1; 2026.7.0-latest to before 2026.7.0 | 2026.1.6, 2026.5.2, 2026.6.1, 2026.7.0 | Patch available | CNA |
- discourse Vendordiscourse Affected before 2026.1.6; 2026.5.0-latest to before 2026.5.2; 2026.6.0-latest to before 2026.6.1; 2026.7.0-latest to before 2026.7.0 Fixed in 2026.1.6, 2026.5.2, 2026.6.1, 2026.7.0 Patch available CNA
Remediation
- Fix · CNA discourse (discourse) Fixed in 2026.1.6, 2026.5.2, 2026.6.1, 2026.7.0
Timeline
- 2026-10-02 Threatist record created from CVE-2026-72724
- 2026-10-31 EPSS moved to the 50th–90th percentile
- 2026-11-01 EPSS moved to the below the 50th percentile
- 2026-11-03 EPSS moved to the 50th–90th percentile
References
Other 9
- https://github.com/discourse/discourse/security/advisories/GHSA-8g98-fvfc-9w48
- https://github.com/discourse/discourse/pull/42091
- https://github.com/discourse/discourse/pull/42092
- https://github.com/discourse/discourse/pull/42093
- https://github.com/discourse/discourse/pull/42094
- https://github.com/discourse/discourse/commit/1276d7032af8803956c74ae87ccfd976938dcd75
- https://github.com/discourse/discourse/commit/45ab6d54076de9ca4965888974d4416d5b48e83c
- https://github.com/discourse/discourse/commit/49efe1d7f098f2ce7301908815a211cc9248270f
- https://github.com/discourse/discourse/commit/dc54846f0754799591717b6018343e49524e41ce
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
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences