Skip to main content
← All vulnerabilities
CVE-2026-72731

Discourse: Strip SQL comments and use non-recursive parameter interpolation in Data Explorer

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2026.1.7, 2026.6.2, 2026.7.1, 2026.8.0-latest.1
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

Discourse is an open-source discussion platform. From 2026.1.0-latest until 2026.1.7, 2026.6.2, 2026.7.1, and 2026.8.0-latest.1, anyone able to run a parameterized Data Explorer query, including non-staff members of a group a query is shared with, could craft parameter values that escaped the intended query and executed arbitrary SQL through plugins/discourse-data-explorer/lib/discourse_data_explorer/data_explorer.rb and plugins/discourse-data-explorer/lib/discourse_data_explorer/workflows/sql_action/v1.rb. Recursive parameter interpolation allowed one parameter value to introduce another parameter, and parameter declarations in SQL comments could be used to inject a statement. Queries run in a read-only transaction, so data could not be modified, but any table could be read. This issue is fixed in versions 2026.1.7, 2026.6.2, 2026.7.1, and 2026.8.0-latest.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • discourse discourse

    fixed in 2026.1.7; From 2026.6.0-latest · fixed in 2026.6.2; From 2026.7.0-latest · fixed in 2026.7.1; From 2026.8.0-latest · fixed in 2026.8.0-latest.1

References 5

GitHub · discourse/discourse