Spatie Laravel Media Library contains a file upload restriction bypass
Published 29 May 2026 · Updated 10 Sept 2026
Affected package
- Affected
- <11.23.0
- Fixed in
- 11.23.0
composer require spatie/laravel-medialibrary:^11.23.0Details
Spatie Laravel Media Library before version 11.23.0 contains a file upload restriction bypass in FileAdder::defaultSanitizer(). The sanitizer checks only the final filename suffix, allowing double-extension filenames such as shell.php.jpg to bypass the blocklist, with pathinfo() preserving inner .php stems in saved filenames. The blocklist also omits executable extensions including .php6, .shtml, and .htaccess. The double-extension bypass requires a legacy Apache AddHandler configuration to achieve PHP execution; the incomplete blocklist bypass does not.
Is GHSA-3ggm-c5m7-hfv5 in any of your client repos?
Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected spatie/laravel-medialibrary, and gives you the command that fixes it.
References
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-48557
- Linkgithub.com/spatie/laravel-medialibrary/pull/3939
- Linkgithub.com/spatie/laravel-medialibrary/commit/608ea03703d3887c46434f5dda6af56de6346aba
- Packagegithub.com/spatie/laravel-medialibrary
- Linkgithub.com/spatie/laravel-medialibrary/releases/tag/11.23.0
- Linkwww.vulncheck.com/advisories/spatie-laravel-media-library-file-upload-restriction-bypass-via-fileadder-php
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.