{"id":"CVE-2026-91134","revision":"a971efd041464128b0f1b1455a4fd5d5","records":[{"revision":"a971efd041464128b0f1b1455a4fd5d5","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-91134","aliases":[],"title":"Discourse: Block post iframes whose encoded userinfo bypasses the allowed_iframes allowlist","description":"Discourse is an open-source discussion platform. Prior to 2026.1.8, 2026.6.3, 2026.7.2, and 2026.8.0, the Discourse post sanitizer allowed a stored cross-origin iframe to bypass the allowed_iframes prefix policy when the iframe src contained encoded userinfo. The sanitizer validated a decoded form differently from the stored iframe src, allowing the browser to interpret an attacker-controlled host while the allowlist check accepted the encoded URL as an allowed prefix. An authenticated user with posting privileges could persist the iframe in a post and cause attacker-controlled cross-origin content to be rendered. This issue is fixed in versions 2026.1.8, 2026.6.3, 2026.7.2, and 2026.8.0.","state":0,"publishedAt":"2026-09-24T16:51:34.057+00:00","modifiedAt":"2026-09-29T02:56:30.376+00:00","affected":[{"ecosystem":"Vendor product","name":"discourse","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"discourse\",\n                    \"product\": \"discourse\",\n                    \"versions\": [\n                        {\n                            \"version\": \"< 2026.8.0\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \">= 2026.7.0-latest, < 2026.7.2\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \">= 2026.6.0-latest, < 2026.6.3\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \">= 2026.1.0-latest, < 2026.1.8\",\n                            \"status\": \"affected\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N","score":5.4,"severity":"MEDIUM"}],"references":["https://github.com/discourse/discourse/security/advisories/GHSA-54vw-chv3-wjpv","https://github.com/discourse/discourse/pull/42882","https://github.com/discourse/discourse/commit/0a8015e6c7a5079981843721494d30c9a91f5415","https://github.com/discourse/discourse/commit/1304b0c04f87534053b0d574ae5a9b9ba13dd590","https://github.com/discourse/discourse/commit/bac7dd1201911851462483271b4567246fa1309d","https://github.com/discourse/discourse/commit/fed3a58c48412ce7207b72a4629ddbc44482cd64"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-91134","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-91134","identifiers":["CVE-2026-91134"]},"retained":false,"historicalAffected":[]}],"coverage":[]}