Skip to main content

Umbraco CMS CVE-2026-69197

| EUVDEUVD-2026-81902 HIGH
Information Exposure (CWE-200)
2026-09-17 GitHub_M GHSA-wr57-hqmp-fgvh
8.7
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Reach public Delivery API endpoint
  2. Delivery
    Identify public node referencing protected content
  3. Exploit
    Request node with ?expand parameter
  4. Execution
    Expansion strategy skips Public Access check
  5. Impact
    Exfiltrate protected node name, route, id and property values

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

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

Exploitation Conditions

The Content Delivery API must be enabled and configured for public consumption. Two concrete paths exist: (1) with DeliveryApi:PublicAccess enabled, an anonymous caller exploits it with no authentication; (2) when the Delivery API is gated by the organization-wide API key, a valid key holder exploits it. In both cases the content model must contain a publicly-accessible node that references a Public Access-protected node via a Content Picker or Multi-Node Tree Picker (including pickers nested in Block List, Block Grid, or Rich Text Editor blocks), and the attacker uses the ?expand query parameter to serialize the referenced node's property values. LIMITING FACTORS: the Delivery API is opt-in and not enabled by default; exploitation requires a specific content structure where protected content is referenced from unprotected content; impact is confidentiality-only (no write/DoS). The same path also bypasses allowed/disallowed content-type alias restrictions for referenced content. Affected versions are prior to 13.15.1, 17.5.3, and 18.0.2.

Impact

This is a genuine, well-substantiated confidentiality vulnerability. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H) describes remote, low-complexity, unauthenticated access to high-value confidential data, yielding an 8.7 (High). My independent view is slightly lower (~7.5 CVSS 3.1) because real-world exploitation is gated by non-default deployment choices - the Content Delivery API must be enabled AND either DeliveryApi:PublicAccess must be turned on (for the anonymous path) or the attacker must hold the organization-wide API key. Against those signals: there is no EPSS score, no CISA KEV listing, and no public exploit code provided in the intelligence, so this is 'no public exploit identified at time of analysis' rather than an actively-exploited threat. The impact is strictly confidentiality - the advisory explicitly states no integrity or availability impact and direct requests for protected nodes still return 401. Net: a real, patch-worthy access-control/information-disclosure flaw that should be prioritized for sites running the Delivery API with Public Access, but it is not a mass-exploitation emergency; the CWE-200 classification and confidentiality-only CVSS are internally consistent and confirmed by the source-code fix (member/Public Access checks added to referenced-node expansion).

Exploit ScenarioDerived

On an Umbraco site exposing the Content Delivery API with DeliveryApi:PublicAccess enabled, an anonymous attacker requests a public node that references a members-only/protected node through a Content Picker or Multi-Node Tree Picker (including pickers nested in Block List, Block Grid, or Rich Text Editor blocks), then appends ?expand to force serialization of the referenced node's full property values - retrieving content that a direct request would reject with 401. In the API-key-gated deployment, a key holder performs the same expansion to bypass per-node Public Access. No public proof-of-concept was provided in the intelligence sources.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.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 – Sep 17, 2026

Information disclosure in Umbraco CMS allows an unauthenticated caller (CVSS 4.0 vector AV:N/AC:L/PR:N/UI:N, independently assessed as CVSS 3.1 AV:N/AC:L/PR:N/UI:N/C:H/I:N/A:N, score 8.7) to read the name, route and id of Public Access-protected nodes, and - by appending ?expand - their full serialized property values, whenever those protected nodes are merely referenced from an unprotected page through Content Picker or Multi-Node Tree Picker properties, including pickers nested in Block List, Block Grid or Rich Text Editor blocks. The same RequestContextOutputExpansionStrategyV2 and ElementOnlyOutputExpansionStrategy code path also bypasses allowed/disallowed content-type alias restrictions for referenced content. All releases prior to 13.15.1, 17.5.3 and 18.0.2 are affected, but the Delivery API is opt-in and not enabled by default and exploitation additionally requires a content structure in which protected content is referenced from unprotected content; there is no integrity or availability impact, no public exploit identified at time of analysis, and no confirmed active exploitation. When the Delivery API is gated by the organization-wide API key rather than DeliveryApi:PublicAccess, a key holder can still bypass per-node Public Access through the same expansion path, so the disclosure is not limited to the anonymous configuration.

RemediationAI

Vendor-released patch: upgrade to Umbraco CMS 13.15.1, 17.5.3 or 18.0.2 (or a later release on the corresponding train) as described in the GitHub Security Advisory https://github.com/umbraco/Umbraco-CMS/security/advisories/GHSA-wr57-hqmp-fgvh, with the release artifacts at https://github.com/umbraco/Umbraco-CMS/releases/tag/release-13.15.1, https://github.com/umbraco/Umbraco-CMS/releases/tag/release-17.5.3 and https://github.com/umbraco/Umbraco-CMS/releases/tag/release-18.0.2; the upstream commits 26312a3f717a0f33bb3d7d28b14bef3592bdb0fe, 5360e2a9681ce2d0024be374e80339260bcc2511 and a9649da4e5a0786db7688bd6b5036a21df26b015 can be used to validate or backport the change. If immediate upgrade is not possible, the most effective compensating control is to remove the data path entirely: ensure no Public Access-protected node is referenced from a publicly reachable node through Content Picker or Multi-Node Tree Picker properties, including pickers nested in Block List, Block Grid and Rich Text Editor blocks - this is fully effective but constrains editorial content modelling. Disabling the Delivery API outright (DeliveryApi:Enabled false) closes the issue for headless deployments that can absorb the loss of the delivery surface, though it will break any external front end consuming it. Note that disabling DeliveryApi:PublicAccess is not a complete mitigation: it removes the anonymous path but the API-key-gated configuration remains exploitable by any key holder, so keys should be rotated, scoped to trusted clients and never embedded in browser-delivered JavaScript, and the /umbraco/delivery/api endpoints should be restricted at the network or reverse-proxy layer to known consumers, which reduces exposure but may break legitimate distributed clients. Allowed/disallowed content-type alias restrictions in the Delivery API should not be treated as an access control boundary until the patch is applied. Finally, treat the affected content as potentially disclosed and review logs of ?expand requests against referencing nodes for signs of enumeration.

Affected VersionsENISA

Umbraco-CMS 12.0.0, < 13.15.1
Umbraco-CMS 14.0.0-rc1, < 17.5.3
Umbraco-CMS 18.0.0, < 18.0.2

Affected Packages

nuget umbraco.cms fix: 13.15.1, 17.5.3, 18.0.2
euvd umbraco_cms_14_0_0_rc1 fix: 17.5.3

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in nuget, euvd

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

Technical ContextAI · show details

Umbraco is an ASP.NET (ASP.NET Core) headless CMS whose Content Delivery API serializes published content into JSON for front-end consumption, using pluggable output expansion strategies - RequestContextOutputExpansionStrategyV2 (which derives from ElementOnlyOutputExpansionStrategy) - to decide which properties are rendered and whether nested/referenced content is expanded. The root cause is CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor): the strategies applied member and Public Access checks only to the directly requested node and never re-evaluated access for nodes returned by Content Picker or Multi-Node Tree Picker property value converters, so referenced IApiContent objects were serialized without an authorization gate. The upstream fix commits (26312a3f717a0f33bb3d7d28b14bef3592bdb0fe, 5360e2a9681ce2d0024be374e80339260bcc2511, a9649da4e5a0786db7688bd6b5036a21df26b015) inject IApiPublishedContentCache and IRequestMemberAccessService into both strategies and route every IApiContent or IEnumerable<IApiContent> property value through an ApplyContentAccessControl step: content not resolvable through the Delivery API published-content cache is omitted entirely (null for single references, filtered out of collections for Multi-Node Tree Pickers), and when the property is being expanded the service calls MemberHasAccessToAsync and, if the PublicAccessStatus is anything other than AccessAccepted, clears apiContent.Properties so the reference (e.g. a link that will still 401) is retained but its values are not leaked. The build metadata records only the unconstrained CPE cpe:2.3:a:umbraco:umbraco-cms:*:*:*:*:*:*:*:*, which means version-based detection must be performed against the 13.x, 17.x and 18.x release trains rather than relying on the CPE string, and the vulnerability affects the Delivery API rendering layer only - the back-office and direct node requests are unaffected.

Know when Umbraco 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 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Network, low-complexity, anonymous exploitation under the PublicAccess path (PR:N); high confidentiality loss of protected content; no integrity/availability impact and no scope change to a separate authority.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/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
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 15:44 cve.org
HIGH 8.7

DescriptionCVE.org

Umbraco is an ASP.NET CMS. Prior to 13.15.1, 17.5.3, and 18.0.2, the Content Delivery API applies member and Public Access checks to the directly requested node but not to referenced nodes serialized through Content Picker or Multi-Node Tree Picker properties, including pickers nested in Block List, Block Grid, or Rich Text Editor blocks. When DeliveryApi:PublicAccess is enabled, an anonymous caller can retrieve a protected node's name, route, and id through an unprotected referencing node and use ?expand to retrieve full property values. When the Delivery API is instead gated by the organization-wide API key, a key holder can still bypass per-node Public Access through the same expansion path. The same RequestContextOutputExpansionStrategyV2 and ElementOnlyOutputExpansionStrategy path also bypasses allowed or disallowed content-type alias restrictions for referenced content. Direct requests for the protected node still return 401, and no integrity or availability impact is established. This issue is fixed in versions 13.15.1, 17.5.3, and 18.0.2.

Technical POC Analysis

Bug class: CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor), with the advisory additionally tagging CWE-862 (Missing Authorization).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Internet-facing Umbraco CMS deployments that have opted into the Delivery API and that reference Public Access-protected content from unprotected pages can leak that content's names, routes, identifiers, and - with a simple query-string addition - full serialized property values to any unauthenticated caller. Because no credentials are required and no public exploit code or confirmed active exploitation is known at this time, the primary risk is silent exposure of member-gated or otherwise restricted published material, which can carry contractual, regulatory, or reputational consequences for the business units relying on that CMS. Leadership should care because remediation depends on customer-side configuration (Delivery API enablement and content structure) rather than on a vendor patch that is currently available.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations are configuration- and content-based. Disable the opt-in Delivery API where it is not required, or restrict access to it via network controls or reverse-proxy/WAF rules that block '?expand' query parameters on Delivery API endpoints and rate-limit enumeration attempts. Audit and restructure content so that Public Access-protected nodes are not referenced from unprotected pages via Content Picker or Multi-Node Tree Picker properties, including pickers nested in Block List, Block Grid, and Rich Text Editor blocks, and independently enforce allowed/disallowed content-type alias restrictions on referenced content. Monitor Delivery API and web logs for unauthenticated expansion requests and treat any successful retrieval of protected node names, routes, IDs, or property values as a disclosure event requiring incident response. Upgrade to the first unaffected releases named in the advisory (13.15.1, 17.5.3, 18.0.2) as soon as vendor-verified builds are available.

Threat Intelligence Overview

EPSS Score
0.4%
Top 68% exploitable
Prevalence
Medium
widely-used open-source ASP.NET CMS, common but not ubiquitous
Threat Intel
1
1 source
Data Quality
5 sources
Confidence: Medium

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 HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2012-10054 CRITICAL POC
9.3 Aug 13

Umbraco CMS versions prior to 4.7.1 are vulnerable to unauthenticated remote code execution via the codeEditorSave.asmx

CVE-2015-8813 HIGH POC
8.2 Mar 03

The Page_Load function in Umbraco.Web/umbraco.presentation/umbraco/dashboard/FeedProxy.aspx.cs in Umbraco before 7.4.0 a

CVE-2020-9471 HIGH POC
8.8 Mar 16

Umbraco Cloud 8.5.3 allows an authenticated file upload (and consequently Remote Code Execution) via the Install Package

CVE-2021-47776 MEDIUM POC
6.9 Jan 15

Umbraco CMS v8.14.1 contains a server-side request forgery vulnerability that allows attackers to manipulate baseUrl par

CVE-2024-10761 MEDIUM POC
6.9 Nov 04

A vulnerability was found in Umbraco CMS up to 10.7.7/12.3.6/13.5.2/14.3.1/15.1.1. Rated medium severity (CVSS 6.9), thi

CVE-2024-55488 MEDIUM POC
6.5 Jan 22

A stored cross-site scripting (XSS) vulnerability in Umbraco CMS v14.3.1 allows attackers to execute arbitrary web scrip

CVE-2020-5811 MEDIUM POC
6.5 Dec 30

An authenticated path traversal vulnerability exists during package installation in Umbraco CMS <= 8.9.1 or current, whi

CVE-2020-9472 MEDIUM POC
6.5 Mar 16

Umbraco CMS 8.5.3 allows an authenticated file upload (and consequently Remote Code Execution) via the Install Package f

CVE-2012-1301 CRITICAL
9.8 Apr 13

The FeedProxy.aspx script in Umbraco 4.7.0 allows remote attackers to proxy requests on their behalf via the "url" param

CVE-2015-8815 MEDIUM POC
6.1 Mar 03

Multiple cross-site scripting (XSS) vulnerabilities in Umbraco before 7.4.0 allow remote attackers to inject arbitrary w

CVE-2025-67288 CRITICAL
10.0 Dec 22

Arbitrary code execution in Umbraco CMS 16.3.3 is claimed via upload of a crafted PDF file that abuses insufficient file

CVE-2021-33224 CRITICAL
9.8 Feb 24

File upload vulnerability in Umbraco Forms v.8.7.0 allows unauthenticated attackers to execute arbitrary code via a craf

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