Read the docs
TI-2026-61902 Aliases CVE-2026-91134

Discourse: Block post iframes whose encoded userinfo bypasses the allowed_iframes allowlist

Priority LOW 24CWE-20Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
Low · Low · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA.

Summary

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.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00216 12th percentileScored 2026-11-07
Fix Fixed discourse (discourse): 2026.8.0, 2026.7.2, 2026.6.3 +1

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
discoursediscoursebefore 2026.8.0; 2026.7.0-latest to before 2026.7.2; 2026.6.0-latest to before 2026.6.3; 2026.1.0-latest to before 2026.1.82026.8.0, 2026.7.2, 2026.6.3, 2026.1.8Patch availableCNA
  • discourse Vendordiscourse Affected before 2026.8.0; 2026.7.0-latest to before 2026.7.2; 2026.6.0-latest to before 2026.6.3; 2026.1.0-latest to before 2026.1.8 Fixed in 2026.8.0, 2026.7.2, 2026.6.3, 2026.1.8 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:discourse:discourse:*:*:*:*:*:*:*:*——discourse
  • cpe:2.3:a:discourse:discourse:*:*:*:*:*:*:*:* Versions — — ·discourse

Remediation

  • Fix · CNA discourse (discourse) Fixed in 2026.8.0, 2026.7.2, 2026.6.3, 2026.1.8

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-91134

References

  • TI-2022-22806 Discourse BBCode plugin vulnerable to arbitrary CSS injection CVSS 3.1CRITICAL 9.8
  • TI-2021-19656 Denial of Service in discourse CVSS 3.1MEDIUM 6.8
  • TI-2024-36150 Potential Backup file leaked via Nginx in Discourse CVSS 3.1HIGH 7.5
  • TI-2021-18002 RCE via malicious SNS subscription payload CVSS 3.1CRITICAL 10.0
  • TI-2026-24651 Discourse: Open redirect via `sso_destination_url` cookie in `enter` CVSS 4.0MEDIUM 5.1
  • TI-2022-18730 Discourse Patreon vulnerable to improper validation of email during Patreon authentication CVSS 3.1CRITICAL 9.8
See all 328 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences