GHSA-x5w2-wcr8-9q45 Silverstripe Missing security check on dev/build/defaults

Not scored Published

Unauthenticated attackers can trigger database modifications and view schema details via the unprotected /dev/build/defaults endpoint in Silverstripe.

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

What is GHSA-x5w2-wcr8-9q45?

GHSA-x5w2-wcr8-9q45 is a missing authorization vulnerability in silverstripe/framework, published on 23 May 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The buildDefaults method on DevelopmentAdmin is missing a permission check.

In live mode, if you access /dev/build, you are requested to login first. However, if you access /dev/build/defaults, then the action is performed without any login check. This should be protected in the same way that /dev/build is. The buildDefaults view is requireDefaultRecords() on each DataObject class, and hence has the potential to modify database state. It also lists all modified tables, allowing attackers more insight into which modules are used, and how the database tables are structured.

Which versions are affected by GHSA-x5w2-wcr8-9q45?

6 open source packages ship an affected version, including silverstripe/framework.

PackageAffectedFixed in
silverstripe/framework PackagistAll versions3.1.17
silverstripe/framework PackagistAll versions3.1.17
silverstripe/framework PackagistFrom 3.2.03.2.2
silverstripe/framework PackagistFrom 3.2.03.2.2
silverstripe/framework PackagistFrom 3.3.0-beta13.3.0
silverstripe/framework PackagistFrom 3.3.0-beta13.3.0

How do I fix GHSA-x5w2-wcr8-9q45?

Upgrade silverstripe/framework to a fixed version for your release line: 3.1.17, 3.2.2 or 3.3.0.

Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.

Is GHSA-x5w2-wcr8-9q45 being exploited?

There is no known exploitation of GHSA-x5w2-wcr8-9q45 in the wild and no public exploit code.

Sources

Is GHSA-x5w2-wcr8-9q45 in your software?

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

Check your SBOMs for free