Discourse is an open-source discussion platform. Prior to 2026.1.8, 2026.6.3, 2026.7.2, and 2026.8.0, the topic small-action and nested-activity-log components interpolated the free-form action_code_who value into mention-link href attributes without URL encoding. A quote-bearing display name could terminate the intended URL attribute and inject attacker-controlled elements into the trusted rendered markup. Although the visible mention text was escaped, the unencoded path component allowed stored HTML injection when another user viewed the affected topic action or activity log. This issue is fixed in versions 2026.1.8, 2026.6.3, 2026.7.2, and 2026.8.0.
https://github.com/discourse/discourse/security/advisories/GHSA-pv3p-p3m9-v8v3
https://github.com/discourse/discourse/pull/42882
https://github.com/discourse/discourse/commit/c4748f651d9d2f3a6dd3106a4d5564536c645168
https://github.com/discourse/discourse/commit/77a81c7a3a7ff9e94b355e32b8f379f2d389e05a
https://github.com/discourse/discourse/commit/66653c484cfb91bc346f9a326f6945387f17b035
https://github.com/discourse/discourse/commit/20dbf112760eb1d6a58f2e49aeef7546898b6f1c