March 2026: patch first, then notice that Umbraco HQ wrote half the month
If you run Umbraco 16 or 17, check your patch version before you read anything else in this post. On 10 March Umbraco published a security advisory covering three vulnerabilities, written by Andy Butland on the vendor's own blog. Affected: 16.0.0 through 16.5.0, and 17.0.0 through 17.2.1. Fixed in 16.5.1 and 17.2.2.
The highest-rated of the three is a privilege escalation in the management API: an insufficiently
authorised endpoint lets a user assign themselves or someone else to additional user groups.
Umbraco rates it high but notes it is "significantly mitigated in practice" because the account
already needs access to the Users section. The second is stored XSS through property type
descriptions, where event-handler attributes such as onclick were not being filtered, and needs
Settings access. The third lets an authenticated user assign domain data to content nodes they
have no permission over.
Notice what those three mitigations have in common. Every one of them assumes the attacker is already a backoffice user, and on most projects the list of people holding Settings or Users access is longer than anyone has written down. That is the reason to patch, not the reason to relax. Cloud sites on the latest minor were patched the same day; if you are not on 16.5.x or 17.2.x, the minor-upgrade feature is the route.
Half of this month's record came from umbraco.com
Of the fourteen items cited here, seven are Umbraco HQ's own blog. Fifty percent. That is a fact about March rather than about how we harvested it, and it is worth saying out loud: the vendor set the agenda this month, the agenda was AI, and the community answered in fragments.
The AI track, told by the people building it
Phil Whittaker wrote two of those seven, both vendor posts about a vendor initiative: What are Agent Skills? on 3 March and Introducing Agent Skills: Umbraco Backoffice Extension on 16 March. The substance is a collection of over 66 skills covering backoffice extension types, loaded by what Umbraco calls progressive discovery rather than dumped into context at once. Whittaker's summary is "Only what's needed, when it's needed."
The consequence is concrete and you can measure it this week. If your team points Claude Code or Cursor at an Umbraco solution today, the model has been trained on tutorials spanning v8 through v17 and will happily mix them, or reach for AngularJS. That is the failure this is aimed at. An afternoon installing the skills is a fair trade against the hour you lose the first time an agent invents a property editor that stopped existing three majors ago.
The Q1 2026 product update — Filip Bech-Larsen, Umbraco — is the quarterly vendor document: Umbraco Compose launching, Cloud security work, explicit scoring in Engage, ISO 27001, Umbraco 13 LTS, and the March advisory. It also trails "a new era for Search". Treat the forward-looking half as intent rather than commitment, and confirm any date with Umbraco before you plan a client's roadmap around it.
The Umbraco in AI Community Team and the AI in Umbraco Advisory Board — Bolette Kern, Umbraco — names 27 people across two groups. The useful signal is not the announcement, it is the composition: partner developers on one side and an advisory board of people who spend their working day inside the backoffice on the other. A CMS vendor putting editors in the room while it designs AI features is doing something most of its competitors are not.
Understanding Contexts in Umbraco AI — Matt Brailsford — is the only explanation of how the AI layer actually behaves that did not come from HQ, and it is the clearest thing published on the subject in March. A context is "a reusable container of knowledge that gets injected into AI requests", built from resources that are either Always injected into the system prompt or fetched On Demand. Brailsford's source record carries a commercial interest in the product he is describing, so read it as a builder's walkthrough rather than an independent assessment. The Always-versus-On-Demand distinction is the part that will decide your token bill.
The three pieces that will actually save you money
Securing Umbraco Images with HMAC —
Nathaniel Nunes. ImageSharp generates crops from query-string parameters, which means anyone can
request arbitrary width and height combinations and each new pair costs you a render. Nunes walks
the abuse case and then the fix, which is the HMAC secret key under
Umbraco:CMS:Imaging:HMACSecretKey. Ten minutes of work. If you pay for compute by the second, it
is the highest-return item on this list.
OC.PowerSort — Owain Williams,
writing at Owain Codes; the harvest recorded the byline as the site handle, "Owain.Codes", rather
than his name. A content-ordering dashboard with scheduled sort orders and saved defaults, built
with Harrie Mayhem and shipping as OC.PowerSort 17.1.0 on NuGet. If you have bespoke sort code
propping up a carousel or a news list, this is the month you delete it.
Top Bugfixes & Stability Updates — Dave Jonker. A community read-through of 17.2.2, opening with the right expectation: "By the time a patch release drops, you're not expecting anything wild." He covers backoffice friction fixes, Content Delivery API consistency around null and missing values, and dependency-injection behaviour at startup. This is a community summary rather than the official changelog, so confirm any specific fix against Umbraco's release notes before you cite it to a client.
Two smaller ones.
Umbraco.UI v2.0.0-alpha.1
landed on 3 March, published under the GitHub account iOvergaard with no full name credited on
the release page. It is an alpha and there is nothing to act on, but it ships a high-contrast theme
and a jscodeshift codemod for imports, which tells you v2 will move things. Backoffice extension
authors should read the v1-to-v2 migration document now rather than the week it goes stable. And
Williams also published a
GitKraken CLI beginner's guide
on 24 March, about a commercial tool, with no declared commercial interest on his side. Not
Umbraco-specific, but a fair read if the Git ergonomics on your team are costing you.
The marketing-shaped ones, read honestly
Niels Christian Laursen wrote two of HQ's seven. The AEO/GEO audit checklist (5 March) is a vendor post that happens to contain a checklist an editor can genuinely work through: headings, sections that stand alone, schema, trust signals, indexability. The G2 Spring 2026 results (17 March) is the vendor summarising an analyst site's scores about itself. It is procurement ammunition, which is a real and legitimate use, and it is not evidence of anything else.
Introducing AI To Your Website Without Increasing Risk — Chris Osterhout, Diagram. Diagram is an agency that implements this work commercially, so this is a pitch, and it happens to be a pitch with a correct argument inside it: ground the assistant in pages you already published rather than letting it generate freely. "The safest AI experiences don't create information." That is also the cheapest thing to build, which is why it is the right first step and not merely the safe one.
What March was, and what to do about it
Patch, turn on the HMAC key, and then you can leave the rest for a quarter without losing much.
The harder observation is the 50%. Publishing Agent Skills early is the right call by Umbraco, and the AI advisory board with editors on it is better governance than most CMS vendors manage. But an ecosystem where the vendor writes half the month's record is one where the independent check on that vendor's claims is thin, and 2026 is precisely the year you want that check to be strong. The three posts here that changed what we would do on a live project came from three individuals writing on their own domains. That is where the ratio should worry you.
Sources
- Umbraco CMS Security Advisory, March 10, 2026 — Andy Butland, Umbraco (official blog)
- The Agent-Ready CMS: What are Agent Skills? — Phil Whittaker, Umbraco (official blog)
- The Agent-Ready CMS: Introducing Agent Skills: Umbraco Backoffice Extension — Phil Whittaker, Umbraco (official blog)
- Umbraco Product Update - Q1 2026 — Filip Bech-Larsen, Umbraco (official blog)
- Announcing the Umbraco in AI Community Team & the AI in Umbraco Advisory Board — Bolette Kern, Umbraco (official blog)
- Understanding Contexts in Umbraco AI — Matt Brailsford
- Securing Umbraco Images with HMAC — Nathaniel Nunes
- OC.PowerSort Package — Owain Williams, Owain Codes (harvest records the byline as "Owain.Codes")
- Top Bugfixes & Stability Updates — Dave Jonker, Dynamic Dave
- umbraco/Umbraco.UI v2.0.0-alpha.1 — published by the GitHub account
iOvergaard; no full name credited on the release page - GitKraken CLI Beginner's Guide: A Better Git CLI for Developers — Owain Williams, Owain Codes
- How to Audit Umbraco Content for Answer Engine Readiness (AEO/GEO Checklist) — Niels Christian Laursen, Umbraco (official blog)
- Umbraco Recognized as a G2 Leader Across CMS and Headless in the Spring 2026 Reports — Niels Christian Laursen, Umbraco (official blog)
- Introducing AI To Your Website Without Increasing Risk — Chris Osterhout, Diagram (agency that implements this commercially)