CVE-2026-33687

Sharp has Unrestricted File Upload via Client-Controlled Validation Rules

HIGH
8.8
CVSS Score
Published: March 26, 2026 at 09:47 PM UTC
Updated: June 17, 2026 at 10:37 AM UTC
1 product affected across 1 vendorSharp

Using sharp by code16?

Get instant alerts when new vulnerabilities affect sharp - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH8.8
Exploit prediction
EPSS 0.5%
SSVC
No known exploit

Description

Sharp is a content management framework built for Laravel as a package. Versions prior to 9.20.0 contain a vulnerability in the file upload endpoint that allows authenticated users to bypass all file type restrictions. The upload endpoint within the `ApiFormUploadController` accepts a client-controlled `validation_rule` parameter. This parameter is directly passed into the Laravel validator without sufficient server-side enforcement. By intercepting the request and sending `validation_rule[]=file`, an attacker can completely bypass all MIME type and file extension restrictions. This issue has been addressed in version 9.20.0 by removing the client-controlled validation rules and strictly defining upload rules server-side. As a workaround, ensure that the storage disk used for Sharp uploads is strictly private. Under default configurations, an attacker cannot directly execute uploaded PHP files unless a public disk configuration is explicitly used.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 9.20.0
Affected range stops below 9.20.0, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet. What the record does show:

References (4)

x_refsource_CONFIRMVendor Advisory
Source: cverecord
https://github.com/code16/sharp/security/advisories/GHSA-fr76-5637-w3g9
x_refsource_MISCIssue TrackingPatch
Source: cverecord
https://github.com/code16/sharp/pull/714
x_refsource_MISCProduct
Source: cverecord
https://github.com/code16/sharp/releases/tag/v9.20.0
x_refsource_MISCThird Party Advisory
Source: cverecord
https://laravel.com/docs/13.x/filesystem

SSVC — Action Prioritization

SSVCNo known exploitNot automatableTotal impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

8.8HIGHGitHub_M
Attack Vector
NETWORK
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-434

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card