Skip to main content

Discourse CVE-2026-72723

| EUVDEUVD-2026-55660 MEDIUM
Missing Authorization (CWE-862)
2026-08-10 GitHub_M
5.3
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send GET /site.json unauthenticated
  2. Delivery
    Server invokes SiteSerializer for anonymous viewer
  3. Exploit
    anonymous_default_navigation_menu_tags populated without filter_visible check
  4. Execution
    Restricted tag names and descriptions returned in JSON response
  5. Impact
    Attacker enumerates hidden organizational structure

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that a Discourse administrator has (1) configured one or more tags in SiteSetting.default_navigation_menu_tags, AND (2) those tags are associated with categories, category tag groups, or tag-group permission rules that restrict their visibility to specific user groups or trust levels. Only tag names and descriptions are exposed - not post content or user data. Exploitation is limited to Discourse instances where sensitive organizational information is encoded in tag names or descriptions. There is no authentication, interaction, or special network position required beyond the ability to reach /site.json on the public internet. The practical limiting factor is whether an operator has restricted tags in a way that makes their names sensitive; many Discourse deployments use only public tags, making this a non-issue in those environments.

Impact

The CVSS 3.1 score of 5.3 (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) accurately represents the attack surface: the endpoint is network-accessible with no authentication, no special preconditions, and no user interaction. Real-world impact is bounded - only tag names and descriptions are leaked, not post content, private messages, or user data. This is an information disclosure issue rather than a full authorization bypass. EPSS data is not provided in the intelligence, but given the low information value of tag names and the requirement that an administrator has explicitly configured tags as default navigation menu tags and restricted them to inaccessible categories, the exploitation value is contextual: environments using Discourse to host sensitive communities (legal, HR, security-research) where even tag names reveal organizational structure may face meaningful disclosure risk. No KEV listing and no POC are present, placing real-world priority as low-to-medium. There is no conflict between CVSS signals and the description.

Exploit ScenarioDerived

An unauthenticated attacker sends a single HTTP GET request to https://forum.example.com/site.json and parses the anonymous_default_navigation_menu_tags array in the response. If the Discourse instance is used for a private or semi-private community where tags such as 'security-incidents', 'hr-investigations', or 'board-confidential' are restricted to privileged category groups, their names and descriptions are returned in plaintext without any authentication. No exploit code or tooling is required - a standard browser or curl suffices.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 10, 2026

Unauthorized tag enumeration in Discourse exposes restricted tag names and descriptions to unauthenticated users via the /site.json endpoint. The flaw exists in all Discourse releases prior to 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0, where the anonymous site serializer populates default navigation menu tags from SiteSettings without invoking the DiscourseTagging.filter_visible visibility guard. Attackers can trivially enumerate tag names and descriptions that administrators have restricted to specific categories, category tag groups, or tag-group permission rules, undermining Discourse's information compartmentalization model. No public exploit code or active exploitation has been identified at time of analysis.

RemediationAI

Upgrade Discourse to one of the patched versions corresponding to your release branch: 2026.1.6, 2026.5.2, 2026.6.1, or 2026.7.0. The upstream fixes are delivered across four pull requests (PRs 42091-42094) and four associated commits, all referenced in the vendor advisory at https://github.com/discourse/discourse/security/advisories/GHSA-4p6q-h74v-5j7p. If an immediate upgrade is not feasible, a partial workaround is to remove all tags from SiteSetting.default_navigation_menu_tags that are subject to category or tag-group visibility restrictions, effectively preventing any restricted tags from being eligible for inclusion in the anonymous serializer response; note this trades off navigation usability for authenticated members. There is no network-layer mitigation that can suppress /site.json exposure without breaking the Discourse frontend, as the endpoint is required for client bootstrapping.

Affected VersionsENISA

discourse < 2026.1.6
discourse 2026.7.0-latest, < 2026.7.0
discourse 2026.6.0-latest, < 2026.6.1
discourse 2026.5.0-latest, < 2026.5.2

Affected Packages

euvd discourse fix: 2026.1.6
euvd discourse_2026_5_0_latest fix: 2026.5.2
euvd discourse_2026_6_0_latest fix: 2026.6.1
euvd discourse_2026_7_0_latest fix: 2026.7.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 4 packages in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Discourse (CPE: cpe:2.3:a:discourse:discourse:*:*:*:*:*:*:*:*) is a Ruby on Rails-based open-source forum platform that exposes a /site.json endpoint consumed by its Ember.js frontend. The endpoint is served by SiteSerializer, which populates the anonymous_default_navigation_menu_tags field directly from SiteSetting.default_navigation_menu_tags - a site-level configuration list of tags intended to appear in the navigation menu. The root cause (CWE-862: Missing Authorization) is that this serializer path omits a call to DiscourseTagging.filter_visible, which is the standard Discourse API for applying per-viewer visibility rules to tags based on category restrictions, category_tag_groups, and tag_group permissions. The fix in PR 42091 reflects a broader refactor of the anonymous cache path in site.rb, replacing eager-loading of :tags and :tag_groups with :category_required_tag_groups, decoupling the anonymous serializer from the full unrestricted tag set.

Know when Discourse gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
vuln.today AI 5.3 MEDIUM

Network-accessible unauthenticated endpoint; only tag metadata disclosed, so C:L; no integrity or availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

1
Patch available
Aug 10, 2026 - 17:03 EUVD

DescriptionCVE.org

Discourse is an open-source discussion platform. Prior to 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0, SiteSerializer.anonymous_default_navigation_menu_tags serializes tags from SiteSetting.default_navigation_menu_tags without applying DiscourseTagging.filter_visible for the anonymous viewer. An unauthenticated user can retrieve restricted tag names and descriptions through /site.json when those tags are limited by inaccessible categories, category tag groups, or tag-group permissions. This issue is fixed in versions 2026.1.6, 2026.5.2, 2026.6.1, and 2026.7.0.

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Medium
popular open-source forum platform, common in developer and enterprise communities
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2025-48954 HIGH POC
8.1 Jun 25

Discourse versions prior to 3.5.0.beta6 contain a reflected cross-site scripting (XSS) vulnerability in social login fun

CVE-2022-46162 CRITICAL POC
9.8 Nov 30

discourse-bbcode is the official BBCode plugin for Discourse. Rated critical severity (CVSS 9.8), this vulnerability is

CVE-2026-27934 HIGH POC
8.7 Mar 19

Unauthorized information disclosure in Discourse discussion platform versions prior to 2026.3.0-latest.1, 2026.2.1, and

CVE-2024-47773 HIGH POC
8.2 Oct 08

Discourse is an open source platform for community discussion. Rated high severity (CVSS 8.2), this vulnerability is rem

CVE-2026-26265 HIGH POC
7.5 Feb 26

Discourse versions prior to 2025.12.2, 2026.1.1, and 2026.2.0 contain an insecure direct object reference (IDOR) in the

CVE-2021-3138 HIGH POC
7.5 Jan 14

In Discourse 2.7.0 through beta1, a rate-limit bypass leads to a bypass of the 2FA requirement for certain forms. Rated

CVE-2026-26077 MEDIUM POC
6.5 Feb 26

Unauthenticated attackers can submit forged webhook payloads to multiple email provider integrations in Discourse versio

CVE-2023-38706 MEDIUM POC
6.5 Sep 15

Discourse is an open-source discussion platform. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploi

CVE-2024-53991 MEDIUM POC
5.9 Dec 19

Discourse is an open source platform for community discussion. Rated medium severity (CVSS 5.9), this vulnerability is r

CVE-2025-48877 CRITICAL
9.8 Jun 09

Discourse versions prior to 3.4.4 (stable), 3.5.0.beta5 (beta), and 3.5.0.beta6-dev (tests-passed) contain a critical vu

CVE-2023-47121 CRITICAL
9.8 Nov 10

Discourse is an open source platform for community discussion. Rated critical severity (CVSS 9.8), this vulnerability is

CVE-2022-39355 CRITICAL
9.8 Oct 26

Discourse Patreon enables syncronization between Discourse Groups and Patreon rewards. Rated critical severity (CVSS 9.8

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy