CVE-2026-31833 Umbraco has Stored XSS in UFM Rendering Pipeline via Permissive DOMPurify Attribute Filtering

Medium 6.7 Published Updated

Authenticated backoffice users can inject malicious HTML into property descriptions due to permissive DOMPurify filtering, leading to stored XSS.

Exploited in the wild
Not known
Login needed
An administrator
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-31833?

CVE-2026-31833 is a medium-severity cross-site scripting vulnerability in Umbraco Umbraco Cms, published on 10 Mar 2026. An attacker needs administrator access to exploit it, with no action from the victim.

Official description

Umbraco is an ASP.NET CMS. From 16.2.0 to before 16.5.1 and 17.2.2, An authenticated backoffice user with access to Settings can inject malicious HTML into property type descriptions. Due to an overly permissive attributeNameCheck configuration (/.+/) in the UFM DOMPurify instance, event handler attributes such as onclick and onload, when used within Umbraco web components (umb-*, uui-*, ufm-*) were not filtered. This vulnerability is fixed in 16.5.1 and 17.2.2.

Weakness: CWE-79

Which versions are affected by CVE-2026-31833?

4 open source packages ship an affected version, including Umbraco.Cms. It affects 1 product.

PackageAffectedFixed in
Umbraco.Cms NuGetFrom 16.2.016.5.1
Umbraco.Cms NuGetFrom 16.2.016.5.1
Umbraco.Cms NuGetFrom 17.0.017.2.2
Umbraco.Cms NuGetFrom 17.0.017.2.2

Products include Umbraco Umbraco Cms.

How do I fix CVE-2026-31833?

Upgrade Umbraco.Cms to a fixed version for your release line: 16.5.1 or 17.2.2.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2026-31833 being exploited?

There is no known exploitation of CVE-2026-31833 in the wild and no public exploit code.

All Umbraco Umbraco Cms vulnerabilities

Sources

Also known as GHSA-vrqc-59mw-qqg7.

Is CVE-2026-31833 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free