Description
Discourse is an open-source discussion platform. Prior to 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0, Onebox::DomainChecker.is_blocked? compares hostnames and SiteSetting.blocked_onebox_domains entries case-sensitively, allowing an attacker to bypass configured Onebox domain restrictions by changing character casing in a redirect target hostname. This issue is fixed in versions 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
discourse discourse
< 2026.1.6affected>= 2026.5.0-latest, < 2026.5.2affected>= 2026.6.0-latest, < 2026.6.1affected>= 2026.7.0-latest, < 2026.7.0affected
References
- https://github.com/discourse/discourse/security/advisories/GHSA-3x7x-24rq-h5j6 ↗
- 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/a3e10759fef47f03d450649bb51d9e84f4c68b8f ↗
- https://github.com/discourse/discourse/commit/c2eb6b0e5597d6f28f4be739b83300bc9c69e3cd ↗
- https://github.com/discourse/discourse/commit/caa615c371b1696982ee11ac8f3558f0f8ced584 ↗
- https://github.com/discourse/discourse/commit/f503971d311b7b0dfdb751ee8cfd67e8cb99f5c5 ↗