CVE-2026-27454 PUBLISHED

Discourse has check revision visibility on posts endpoint

Assigner: GitHub_M
Reserved: 19.02.2026 Published: 19.03.2026 Updated: 19.03.2026

Discourse is an open-source discussion platform. Prior to versions 2026.3.0-latest.1, 2026.2.1, and 2026.1.2, requesting /posts/:id.json?version=X bypassed authorization checks on post revisions. The display_post method called post.revert_to directly without verifying whether the revision was hidden or if the user had permission to view edit history. This meant hidden revisions (intentionally concealed by staff) could be read by any user by simply enumerating version numbers. Starting in versions 2026.3.0-latest.1, 2026.2.1, and 2026.1.2, Discourse looks up the PostRevision and call guardian.ensure_can_see! before reverting, consistent with how the /posts/:id/revisions/:revision endpoint already authorizes access. No known workarounds are available.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
CVSS Score: 5.3

Product Status

Vendor discourse
Product discourse
Versions
  • Version >= 2026.1.0-latest, < 2026.1.2 is affected
  • Version >= 2026.2.0-latest, < 2026.2.1 is affected
  • Version = 2026.3.0-latest is affected

References

Problem Types

  • CWE-862: Missing Authorization CWE