What’s Vulnerable › Vulnerabilities
CVE-2026-33686: Sharp is Vulnerable to Path Traversal via Unsanitized Extension in FileUtil
- Severity: high (CVSS 8.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.6% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-03-26 · updated 2026-06-17
- Weakness: CWE-22
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
- code16 sharp: before 9.20.0 — fixed in 9.20.0
How to fix
Upgrade to a fixed version: code16 sharp 9.20.0. Check the vendor advisory for mitigations.
References
- https://github.com/code16/sharp/pull/715
- https://github.com/code16/sharp/security/advisories/GHSA-9ffq-6457-8958
Get alerted when CVE-2026-33686 or the next vulnerability affects your stack