Skip to content
OpenAdvisories
High · 8.8 CVE-2026-33686 EUVD-2026-16446GHSA-9ffq-6457-8958

Sharp is Vulnerable to Path Traversal via Unsanitized Extension in FileUtil

Published Mar 26, 2026 · Updated Mar 27, 2026 · Assigned by GitHub_M

Description

Sharp is a content management framework built for Laravel as a package. Versions prior to 9.20.0 have a path traversal vulnerability in the FileUtil class. The application fails to sanitize file extensions properly, allowing path separators to be passed into the storage layer. In `src/Utils/FileUtil.php`, the `FileUtil::explodeExtension()` function extracts a file's extension by splitting the filename at the last dot. This issue has been patched in version 9.20.0 by properly sanitizing the extension using `pathinfo(PATHINFO_EXTENSION)` instead of `strrpos()`, alongside applying strict regex replacements to both the base name and the extension.

Affected products

VendorProductAffectedFixed
code16 sharp < 9.20.0 —

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist code16/sharp < 9.20.0 9.20.0 GHSA-9ffq-6457-8958

References