Impact
The TUS upload handler parses the Upload‑Length header as a signed 64‑bit integer without ensuring it is non‑negative, a flaw that falls under the category of integer over/underflow weaknesses (CWE‑190). An authenticated user can supply a negative value in a PATCH request, causing the server to consider the upload complete instantly. This triggers any configured post‑upload execution hooks with empty or partial files, allowing the attacker to repeatedly fire hooks under arbitrary filenames and zero written bytes. The lack of validation also leads to inconsistent cache entries where files appear complete but contain no data, potentially disrupting workflows that rely on upload status. Exploitation requires that the instance’s enableExec feature be turned on, which is disabled by default for all installations from v2.33.8 onward, and the attacker must ignore warnings about the vulnerability. If enabled, the negative Upload‑Length can amplify attacks such as command injection via malicious filenames or abuse of workflows like S3 ingestion or database inserts.
Affected Systems
All deployments of File Browser that expose the TUS upload endpoint (/api/tus) are affected. The vulnerability applies to the filebrowser:filebrowser product in the 2.x branch prior to version 2.33.8. Instances that enable the enableExec feature for custom hooks face higher risk, while those that do not may still suffer cache inconsistencies and potential denial of service.
Risk and Exploitability
The CVSS score is 5.3, indicating a moderate severity potential, while the EPSS score is 2%, suggesting low current exploit probability. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires authenticated access; an attacker who can authenticate to the File Browser API can craft the negative Upload‑Length header to trigger hooks or corrupt the file cache. If the enableExec flag is used, the risk escalates from a service disruption to remote command execution or even broader data tampering, depending on what the hooks are configured to perform.
OpenCVE Enrichment
Github GHSA