Read the docs
TI-2026-66188 Aliases GHSA-7jxj-rpx7-ph2c

Umbraco.Forms CDN may cache sensitive form uploads when processed by ImageSharp

Priority LOW 38CWE-524Published · Updated

Key facts

Attack vector
—
Privileges required
—
User interaction
—
Attack complexity
—
Impact type
—
Confidentiality · integrity · availability
—
Fix status
Fixed

No CVSS vector from any source. Fix status from GitHub.

Summary

### Impact Protected files uploaded through Umbraco Forms may be served to unauthenticated users when a CDN or caching layer is present and ImageSharp processes the request. ImageSharp sets aggressive cache headers by default, which can cause intermediary caches to store and serve files that should require authentication. ### Patches This issue affects all (supported) versions Umbraco Forms and is patched in 13.9.0, 16.4.0 and 17.1.0. ### Workarounds Add middleware to set cache headers for form uploads. Place the following code in your `Startup.cs` or `Program.cs` after `app.UseStaticFiles()` and any image processing middleware: ```cs app.Use(async (context, next) => { var path = context.Request.Path.Value; if (!string.IsNullOrEmpty(path) && path.StartsWith("/media/forms/upload/", StringComparison.OrdinalIgnoreCase)) { context.Response.OnStarting(() => { context.Response.Headers["Cache-Control"] = "private, no-store, no-cache, must-revalidate"; context.Response.Headers["Pragma"] = "no-cache"; context.Response.Headers["Expires"] = "0"; return Task.CompletedTask; }); } await next(); }); ``` Alternatively, configure your CDN to bypass caching for URLs matching `/media/forms/upload/*`. Note: The vulnerability requires: - A CDN in front of the website - An authenticated user having previously requested the image - Knowledge of the form GUID, entry GUID, and image filename If no CDN is in use, this vulnerability does not apply.

Why it matters now

Fix Fixed Umbraco.Forms (NuGet): 13.9.0, 16.4.0, 17.1.0

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
—Umbraco.Forms (NuGet)before 13.9.013.9.0Patch availableGHSA-7jxj-rpx7-ph2c
—Umbraco.Forms (NuGet)14.0.0-beta001 to before 16.4.016.4.0Patch availableGHSA-7jxj-rpx7-ph2c
—Umbraco.Forms (NuGet)17.0.0-rc1 to before 17.1.017.1.0Patch availableGHSA-7jxj-rpx7-ph2c
  • Umbraco.Forms (NuGet) Vendor— Affected before 13.9.0 Fixed in 13.9.0 Patch available GHSA-7jxj-rpx7-ph2c
  • Umbraco.Forms (NuGet) Vendor— Affected 14.0.0-beta001 to before 16.4.0 Fixed in 16.4.0 Patch available GHSA-7jxj-rpx7-ph2c
  • Umbraco.Forms (NuGet) Vendor— Affected 17.0.0-rc1 to before 17.1.0 Fixed in 17.1.0 Patch available GHSA-7jxj-rpx7-ph2c

Remediation

  • Fix · GHSA-7jxj-rpx7-ph2c Umbraco.Forms (NuGet) Fixed in 13.9.0 Advisory →
  • Fix · GHSA-7jxj-rpx7-ph2c Umbraco.Forms (NuGet) Fixed in 16.4.0 Advisory →
  • Fix · GHSA-7jxj-rpx7-ph2c Umbraco.Forms (NuGet) Fixed in 17.1.0 Advisory →

Timeline

  1. 2026-10-03 Threatist record created from GHSA-7jxj-rpx7-ph2c

References

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences