GHSA-wr57-hqmp-fgvh: Infoleak

Published Sep 17, 2026
·
Updated

The Content Delivery API enforces member / Public Access protection only at the controller layer, against the node that is directly requested. When a public (unprotected) node references a protected node through a Content Picker or Multi-Node Tree Picker (including those nested inside Block List, Block Grid, or Rich Text Editor blocks), the Delivery API expands and serializes the protected node with no access check applied.

Similarly, configuration based restrictions based on aliases of allowed or disallowed content types are by-passed for referenced content items that are retrieved via property expansion.

As a result, an anonymous / unauthorized caller can retrieve a protected node's: - Name, route, and id — always, even without expansion, and - Full property values — when the request uses ?expand on the picker property. A direct request for the same protected node correctly returns 401 Unauthorized, which makes the leak easy to miss: the protection appears to work, but is bypassed via reference expansion.

Impact Confidential, member-gated content (e.g. pricing, internal documents, gated articles) referenced by any publicly readable node is disclosed to unauthenticated clients. No write/integrity or availability impact.

Highest impact when the Delivery API is publicly readable (DeliveryApi:PublicAccess: true). Still exploitable, at reduced severity, when the Delivery API is gated by the org-wide API key (the key holder still bypasses per-node Public Access).

Patches 13.15.1, 17.5.3, 18.0.2

References https://docs.umbraco.com/umbraco-cms/develop-with-umbraco/headless-and-apis/content-delivery-api

Affected Software

3 affected componentsFixes available
nuget/Umbraco.Cms>=18.0.0<18.0.2
18.0.2
nuget/Umbraco.Cms>=14.0.0-rc1<17.5.3
17.5.3
nuget/Umbraco.Cms>=12.0.0<13.15.1
13.15.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade nuget/Umbraco.Cms to a version that resolves this vulnerability.

    Fixed in 18.0.2
  2. Upgrade

    Upgrade nuget/Umbraco.Cms to a version that resolves this vulnerability.

    Fixed in 17.5.3
  3. Upgrade

    Upgrade nuget/Umbraco.Cms to a version that resolves this vulnerability.

    Fixed in 13.15.1
  4. Upgrade

    Upgrade Umbraco CMS Content Delivery API to a version that resolves this vulnerability.

    Fixed in 13.15.1
  5. Upgrade

    Upgrade Umbraco CMS Content Delivery API to a version that resolves this vulnerability.

    Fixed in 17.5.3
  6. Upgrade

    Upgrade Umbraco CMS Content Delivery API to a version that resolves this vulnerability.

    Fixed in 18.0.2
  7. Compensating control

    If possible, ensure the Delivery API is not publicly readable (DeliveryApi:PublicAccess: true). The bypass described applies when Delivery API is publicly readable; gating the API reduces exploitability to key holders still bypassing per-node Public Access.

Event History

Sep 17, 2026
Advisory Published
via GitHub·04:29 PM
Data Sourced
via GitHub·04:29 PM
DescriptionWeaknessAffected Software

Frequently Asked Questions

1

Which content is realistically exposed?

Protected or member-gated content is exposed when it is referenced by a publicly readable node through a Content Picker or Multi-Node Tree Picker. This also includes pickers nested in Block List, Block Grid, or Rich Text Editor blocks.

2

What does an attacker need to retrieve protected content?

An unauthenticated or unauthorized caller needs access to a public node that references the protected content and must request expansion of the picker property using ?expand. The referenced protected node's full property values can then be returned.

3

How can we check whether protections are being bypassed?

Test anonymously against public nodes that reference protected content, including nested block content, with property expansion enabled. A direct request to the protected node may return 401 Unauthorized even while its name, route, and ID are exposed through the public reference and its full properties are disclosed on expansion.

4

Are content-type allowlist or denylist restrictions sufficient?

No. Configuration restrictions based on aliases of allowed or disallowed content types are bypassed when referenced content is retrieved through property expansion.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203