Cyber Resilience

CVE-2024-47773

Discourse ≤ 3.3.2

Published
08 October 2024
Modified
26 August 2025
CVSS Score v3.1 8.2
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L
EPSS Score 0.017 75th percentile
Risk Priority 69 floored blend · peak EPSS

Summary

CVE-2024-47773 is a high-severity Externally Controlled Reference to a Resource in Another Sphere (CWE-610) vulnerability in Discourse Discourse. Its CVSS base score is 8.2 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Data from Local System (T1005); ranked in the top 25% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to AC-3 (Access Enforcement) and AC-4 (Information Flow Enforcement) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

Discourse, an open source discussion platform, contains a cache poisoning vulnerability that allows an attacker to issue multiple XHR requests and replace cached responses with versions that lack preloaded data. The flaw is restricted to responses served to anonymous visitors and stems from insufficient validation of cacheable content before it is stored and replayed.

An unauthenticated remote attacker can exploit the issue over the network to corrupt the anonymous cache, resulting in integrity violations for site content delivered to unauthenticated users and a limited availability impact. The CVSS 8.2 score reflects the absence of required authentication or user interaction combined with the ability to affect integrity without direct code execution.

The GitHub Security Advisory GHSA-58vv-9j8h-hw2v states that the problem is fixed in the current release of Discourse. Administrators who cannot upgrade immediately may set the DISCOURSE_DISABLE_ANON_CACHE environment variable to any non-empty value to disable the affected caching layer for anonymous requests. The EPSS score has remained flat at 0.0785 with no material increase since disclosure.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Discourse is an open source platform for community discussion. An attacker can make several XHR requests until the cache is poisoned with a response without any preloaded data. This issue only affects anonymous visitors of the site. This problem has…

more

been patched in the latest version of Discourse. Users are advised to upgrade. Users unable to upgrade should disable anonymous cache by setting the `DISCOURSE_DISABLE_ANON_CACHE` environment variable to a non-empty value.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1005 Data from Local System Collection
Adversaries may search local system sources, such as file systems, configuration files, local databases, virtual machine files, or process memory, to find files of interest and sensitive data prior to Exfiltration.
T1083 File and Directory Discovery Discovery
Adversaries may enumerate files and directories or may search in specific locations of a host or network share for certain information within a file system.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1552 Unsecured Credentials Credential Access
Adversaries may search compromised systems to find and obtain insecurely stored credentials.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2025-61598Same product: Discourse Discourse
CVE-2024-53994Same product: Discourse Discourse
CVE-2023-47121Same product: Discourse Discourse
CVE-2025-22601Same product: Discourse Discourse
CVE-2025-68662Same product: Discourse Discourse
CVE-2026-26078Same product: Discourse Discourse
CVE-2026-33185Same product: Discourse Discourse
CVE-2023-28112Same product: Discourse Discourse
CVE-2024-37157Same product: Discourse Discourse
CVE-2026-27149Same product: Discourse Discourse

Affected Assets

discourse
discourse
≤ 3.3.2

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 3 hardening rules · 2 OS baselines
Validate
Prove the fix (OWASP ASVS)

Mitigating Controls (NIST 800-53 r5) AI

Enforces access authorizations so externally supplied references cannot reach resources outside the intended sphere.

Controls information flow between security domains, blocking resolution of external references to unintended spheres.

Validates information inputs, directly stopping externally controlled names or references from being accepted.

Monitors and controls boundary communications, limiting the ability of external references to reach protected resources.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure development practices directly require input validation and reference sanitization that prevent externally-controlled resource references.

DE.CM-09 partial match
prevents

Runtime monitoring of software and data flows can detect anomalous external resource accesses that result from this weakness.

PR.IR-01 partial match
prevents

Network segmentation and access controls limit the blast radius when an external reference escapes its intended sphere.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can detect instances of the weakness but does not prevent it at design or coding time.

prevents

Secure development lifecycle mandates validation of all external references to prevent uncontrolled resource access.

prevents

Application security requirements explicitly call for controls against externally supplied resource identifiers.

prevents

Secure architecture principles reduce the attack surface for externally controlled references but do not prescribe specific validation rules.

prevents

Secure coding standards require input validation and canonicalization to block externally controlled resource references.

mitigates

Information access restriction limits what resources can be reached, indirectly reducing impact of external references.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).

Oracle Linux 8 (1 rule)
  • V-248577 OL 8 must enable kernel parameters to enforce Discretionary Access Control (DAC) on symlinks. prevents CWE-610

References