GitHub Advisoryadvisory · Packagist

GHSA-jgcf-rf45-2f8v Silverstripe Assets Module has a DBFile::getURL() permission bypass

MEDIUM Published 2026-04-16 Modified 2026-04-27 Official page ↗
Aliases
CVE-2026-24749
Ecosystem
Packagist
Packages
silverstripe/assets
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weaknesses
CWE-266, CWE-863
Reviewed
2026-04-16

Affected packages

• Packagist silverstripe/assets: < 2.4.5 → fixed in 2.4.5 • Packagist silverstripe/assets: >= 3.0.0, < 3.1.3 → fixed in 3.1.3

Description

Impact Images rendered in templates or otherwise accessed via `DBFile::getURL()` or `DBFile::getSourceURL()` incorrectly add an access grant to the current session, which bypasses file permissions. This usually happens when creating an image variant, for example using a manipulation method like `ScaleWidth()` or `Convert()`. Note that if you use `DBFile` directly in the `$db` configuration for a `DataObject` class that doesn't subclass `File`, and if you were setting the visibility of those files to "protected", those files will now need an explicit access grant to be accessed. If you do not want to explicitly provide access grants for these files (i.e. you want these files to be accessible by default), you should use the "public" visibility. Reported by Restruct web & apps

Related

Alias · CVE (1)

  • CVE-2026-24749 The Silverstripe Assets Module is a required component of Silverstripe Framework. vulnerability

Weakness · CWE (2)

  • CWE-266 Incorrect Privilege Assignment weakness
  • CWE-863 Incorrect Authorization weakness

References