{"id":"CVE-2026-72724","aliases":["BIT-discourse-2026-72724","EUVD-2026-55663","GHSA-8g98-fvfc-9w48"],"status":"published","title":"Discourse: Private Chat Threat Message Disclosure via Chat Onebox Channel/Threat ID Mismatch","description":"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.","severity":{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00625,"percentile":0.5045,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-639"],"published":"2026-08-10T15:59:53Z","modified":"2026-10-28T02:30:57Z","fixes":[{"ecosystem":"Bitnami","package":"discourse","fixed_in":["2026.1.6","2026.5.2","2026.6.1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Bitnami","package":"discourse","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2026.1.6"},{"introduced":"2026.5.0"},{"fixed":"2026.5.2"},{"introduced":"2026.6.0"},{"fixed":"2026.6.1"}]}]}],"products":[{"vendor":"discourse","product":"discourse"}],"references":[{"url":"https://github.com/discourse/discourse/security/advisories/GHSA-8g98-fvfc-9w48","tags":["x_refsource_CONFIRM","web","advisory"]},{"url":"https://github.com/discourse/discourse/pull/42091","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/pull/42092","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/pull/42093","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/pull/42094","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/commit/1276d7032af8803956c74ae87ccfd976938dcd75","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/commit/45ab6d54076de9ca4965888974d4416d5b48e83c","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/commit/49efe1d7f098f2ce7301908815a211cc9248270f","tags":["x_refsource_MISC","web","fix"]},{"url":"https://github.com/discourse/discourse/commit/dc54846f0754799591717b6018343e49524e41ce","tags":["x_refsource_MISC","web","fix"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-72724","tags":["web","advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72724.json","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2026-72724","title":"Discourse: Private Chat Threat Message Disclosure via Chat Onebox Channel/Threat ID Mismatch","description":"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.","status":"published","published":"2026-08-10T15:59:53.965Z","modified":"2026-08-11T01:57:42.639Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-639"],"updated_at":"2026-11-02T14:19:52.016971Z"}],"euvd":[{"id":"EUVD-2026-55663","description":"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.","status":"published","published":"2026-08-10T15:59:53Z","modified":"2026-08-11T01:57:42Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T18:02:00.742322Z"}],"nvd":[{"id":"CVE-2026-72724","description":"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.","status":"published","published":"2026-08-10T16:19:49.81Z","modified":"2026-09-08T20:54:37.79Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-639"],"updated_at":"2026-11-02T14:12:36.102748Z"}],"osv":[{"id":"CVE-2026-72724","title":"Discourse: Private Chat Threat Message Disclosure via Chat Onebox Channel/Threat ID Mismatch","description":"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.","status":"published","published":"2026-08-10T15:59:53.965Z","modified":"2026-10-28T02:30:57.258030393Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"medium"}],"cwes":["CWE-639"],"updated_at":"2026-11-02T15:45:15.88521Z"},{"id":"BIT-discourse-2026-72724","title":"Discourse: Private Chat Threat Message Disclosure via Chat Onebox Channel/Threat ID Mismatch","description":"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.","status":"published","published":"2026-08-17T05:44:26.455Z","modified":"2026-08-17T08:10:41.231164716Z","updated_at":"2026-11-02T15:28:29.152062Z"}]}}
