CVE-2026-33686
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.
How to fix
- code16 sharp9.20.0 or later
- code16/sharp9.20.0 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| code16 sharp | v < 9.20.0 | 9.20.0 |
| code16/sharpPackagist | v < 9.20.0 | 9.20.0 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.