GitHub Advisoryadvisory · Go
GHSA-68j5-4m99-w9w9 File Browser has an Authorization Policy Bypass in Public Share Download Flow
MEDIUM
Official page ↗
- Aliases
- CVE-2026-32761
- Ecosystem
- Go
- Packages
- https://github.com/filebrowser/filebrowser
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
- Weaknesses
- CWE-284, CWE-639, CWE-863
- Reviewed
- 2026-03-18
Affected packages
• Go https://github.com/filebrowser/filebrowser: <= 2.61.0 (no fix yet)
Description
Summary
A permission enforcement flaw allows users without download privileges (`download=false`) to still expose and retrieve file content via public share links when they retain share privileges (`share=true`). This bypasses intended access control policy and enables unauthorized data exfiltration to unauthenticated users. Where download restrictions are used for data-loss prevention or role separation.
Details
The backend applies inconsistent authorization checks across download paths:
• Direct raw download correctly enforces `Perm.Download`:
• [raw.go](filebrowser/http/raw.go:82)
• Share creation only enforces `Perm.Share`:
• [share.go](filebrowser/http/share.go:21)
• Public share/download handlers serve shared content without verifying owner `Perm.Download`:
• public.go(filebrowser/http/public.go:18)
• public.go(filebrowser/http/public.go:116)
As a result, a user who is blocked from direct downloads can create a share and obtain the same file via `/api/public/dl/`.
PoC
1. Create a non-admin user with:
• `perm.share = true`
• `perm.download = false`
2. Login as that user and upload a PDF file:
• `POST /api/resources/nodl_secret_.pdf` with `Content-Type: application/pdf`
3. Verify direct raw download is denied:
• `GET /api/raw/nodl_secret_.pdf`
• Expected and observed: `202 Accepted` (blocked)
4. Create share for same file:
• `POST /api/share/nodl_secret_.pdf`
• Observed: `200`, response includes `hash` (example: `qxfK3JMG`)
5. Download publicly without authentication:
• `GET /api/public/dl/`
• Observed (vulnerable): `200`, `Content-Type: application/pdf`, and PDF bytes are returned
Live evidence captured (March 1, 2026):
• `create user`: `201`
• `create file`: `200`
• `direct /api/raw`: `202 Accepted`
• `create share`: `200`
• `public download /api/public/dl/mxK-ppZb`: `200`
• `public download content-type`: `application/pdf`
• `public download body length`: `327` bytes
Impact
This is an access control / authorization policy bypass vulnerability.
• Who can exploit: Any authenticated user granted `share=true` but denied `download`.
• Who is impacted: Operators and organizations relying on download restrictions to prevent data export.
• What can happen: Restricted users can still distribute and retrieve files publicly, including unauthenticated access through share URLs.
Related
Alias · CVE (1)
- CVE-2026-32761 File Browser is a file managing interface for uploading, deleting, previewing, renaming, and editing files within a specified directory. vulnerability
References
- https://github.com/filebrowser/filebrowser/security/advisories/GHSA-68j5-4m99-w9w9 web
- https://nvd.nist.gov/vuln/detail/CVE-2026-32761 advisory
- https://github.com/filebrowser/filebrowser/commit/09a26166b4f79446e7174c017380f6db45444e32 web
- https://github.com/filebrowser/filebrowser package
- https://github.com/filebrowser/filebrowser/releases/tag/v2.62.0 web