{"id":"CVE-2026-91132","revision":"d0e5069a55c745889fca6bf4ee60835e","records":[{"revision":"d0e5069a55c745889fca6bf4ee60835e","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-91132","aliases":[],"title":"Discourse: Wildcard iframe origin allowlist bypass via authority separators","description":"Discourse is an open-source discussion platform. Prior to 2026.1.8, 2026.6.3, 2026.7.2, and 2026.8.0, sites using wildcard patterns in the allowed_iframes setting could accept a crafted iframe URL whose allowlisted suffix appeared after a URL authority separator. The wildcard origin check matched the allowed domain text, while browser URL parsing selected a different attacker-controlled origin. A user with posting privileges could exploit the flaw through a post or a Onebox oEmbed response and cause an attacker-controlled iframe to be rendered independently of the allowlisted domain. Successful exploitation requires a site-configured wildcard iframe pattern and the ability to create a post or trigger an oEmbed request for an attacker-controlled URL. 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:57:43.082+00:00","modifiedAt":"2026-09-29T02:57:34.925+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:N/I:L/A:N","score":4.3,"severity":"MEDIUM"}],"references":["https://github.com/discourse/discourse/security/advisories/GHSA-4q3q-hph3-3rvp","https://github.com/discourse/discourse/pull/42882","https://github.com/discourse/discourse/commit/80968704c1acb1d2ea2c6011dbf6c02ff13238e5","https://github.com/discourse/discourse/commit/d5ae0940707f95da5bc4562f7b544243e3103f8a","https://github.com/discourse/discourse/commit/d88e02ceb2eede4d8b851d9fe8aef753f3aa40b9","https://github.com/discourse/discourse/commit/db8064f2a2a2a3feb3308a1c932ac61d950c9e56"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-91132","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-91132","identifiers":["CVE-2026-91132"]},"retained":false,"historicalAffected":[]}],"coverage":[]}