Every CVESearch/Get API key

GHSA-7jxj-rpx7-ph2c

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

3.1 LowFix available

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:

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
Low
Integrity
None
Availability
None

What each source reports

GitHub Advisories Score used3.1

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

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:

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.

Record
GHSA-7jxj-rpx7-ph2c
CVSS 3.1
3.1 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
Weakness
CWE-524
Updated
2026-11-02
OSV3.1

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

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:

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.

Record
GHSA-7jxj-rpx7-ph2c
CVSS 3.1
3.1 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
Weakness
CWE-524
Updated
2026-11-02

Affected packages

Affected packages
PackageAffectedFixed
Umbraco.Forms
NuGet
before 13.9.0
13.9.0
Umbraco.Forms
NuGet
14.0.0-beta001 up to 16.4.0
16.4.0
Umbraco.Forms
NuGet
17.0.0-rc1 up to 17.1.0
17.1.0
Umbraco.Forms
NuGet
before 13.9.0, plus listed versions
10.0.010.0.0-rc110.0.0-rc210.0.0-rc310.0.1
Show 45 moreShow less
10.0.210.0.310.0.410.0.510.1.010.1.0-rc00110.1.110.1.210.1.310.2.010.2.0-rc00110.2.110.2.210.2.310.2.410.3.010.3.0-rc00110.3.110.3.210.3.310.4.010.4.0-rc110.5.010.5.0-rc110.5.110.5.210.5.310.5.410.5.510.5.610.5.711.0.011.0.0-rc111.0.0-rc211.0.0-rc311.0.111.0.211.0.311.1.011.1.0-rc00111.1.111.1.211.1.311.2.011.2.0-rc1
13.9.0
Umbraco.Forms
NuGet
14.0.0-beta001 up to 16.4.0, plus listed versions
14.0.014.0.0-beta00214.0.0-beta00314.0.0-beta00414.0.0-rc1
Show 45 moreShow less
14.0.114.0.214.1.014.1.0-rc114.1.0-rc214.1.114.1.214.1.314.1.414.1.514.2.014.2.0-rc114.2.0-rc214.2.114.2.214.2.315.0.015.0.0-rc115.0.0-rc215.0.0-rc315.0.0-rc415.0.115.0.215.0.315.1.015.1.0-rc115.1.0-rc215.1.0-rc315.1.115.1.215.2.015.2.0-rc16.0.016.0.0-rc116.0.0-rc216.0.0-rc316.0.0-rc416.0.0-rc516.1.016.2.016.2.0-rc16.2.0-rc216.3.016.3.0-rc16.3.0-rc2
16.4.0
Umbraco.Forms
NuGet
17.0.0-rc1 up to 17.1.0, plus listed versions
17.0.017.0.0-rc217.0.0-rc317.0.0-rc417.0.1
Show 4 moreShow less
17.0.217.0.317.1.0-rc17.1.0-rc2
17.1.0

History

History
RecordedChangedSources
first indexedGitHub Advisories, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

GHSA-7jxj-rpx7-ph2c is a low vulnerability (CVSS 3.1) in Umbraco.Forms, published January 22, 2026. No source lists public exploit code. Fixed in Umbraco.Forms 13.9.0.

References

This page doesn't list everything

Left out here: 92 versions. The JSON record has them.

MoveEnter Open