CVE-2026-42277
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedOnyx is an open-source AI platform. Prior to versions 3.0.9, 3.1.6, and 3.2.6, the GET /chat/file/{file_id} endpoint allows any authenticated user to download any other user's uploaded files by providing the file UUID. The endpoint verifies the caller is authenticated but never checks that the file belongs to them. An attacker who knows or obtains a file UUID can access confidential documents, chat attachments, and other files uploaded by any user in the system. This issue has been patched in versions 3.0.9, 3.1.6, and 3.2.6.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceThe GET /chat/file/{file_id} endpoint in Onyx verifies authentication but lacks authorization checks to confirm the requesting user owns the file. Any authenticated user can download any other user's files by knowing the file UUID, making this an Insecure Direct Object Reference (IDOR) vulnerability.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data< 3.0.9>= 3.1.0, < 3.1.6>= 3.2.0, < 3.2.6CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- None
- Availability
- None
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify installed Onyx versionCheck the Onyx application version through its web interface (usually in Settings > About or Help), or inspect the container/image metadata, or run: docker ps | grep onyx (if containerized) to confirm the running versionAffected if The installed version is < 3.0.9, or >= 3.1.0 and < 3.1.6, or >= 3.2.0 and < 3.2.6
-
Confirm file download endpoint existsCheck if the GET /chat/file/{file_id} endpoint is accessible in the Onyx web application by attempting to access a known file UUID path, or review API route definitions in the codebase for /chat/file/{file_id}Affected if The /chat/file/{file_id} endpoint is present and accepts GET requests without explicit authorization logic
-
Verify ownership authorization existsReview the backend code for the /chat/file/{file_id} endpoint to determine if it validates that the requesting user owns the file_id, or perform a functional test: log in as User A, obtain a file UUID owned by User A, then log in as User B and attempt to access that same file UUIDAffected if No ownership check is performed before returning the file, or User B can successfully download User A's file
A user is affected if they are running an Onyx version in the vulnerable ranges AND the file download endpoint allows one authenticated user to access another user's files without ownership verification.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped3.0.93.1.63.2.6
Upgrade to versions 3.0.9, 3.1.6, or 3.2.6 which contain the patch for this vulnerability.
3.0.9 (if on 3.0.x), 3.1.6 (if on 3.1.x), or 3.2.6 (if on 3.2.x)
- 1. Identify your current Onyx version by checking the running service or installation directory
- 2. Determine which upgrade path applies: if on 3.0.x series, upgrade to 3.0.9; if on 3.1.x series, upgrade to 3.1.6; if on 3.2.x series, upgrade to 3.2.6
- 3. Back up the Onyx database and any configuration files before proceeding
- 4. Stop the Onyx service to prevent active connections during upgrade
- 5. Upgrade Onyx using your package manager or by pulling the specific version (e.g., using Docker: pull onyxai/onyx:v3.2.6 or the corresponding version tag for your deployment method)
- 6. Verify the new version is running: check the service version or API response
- 7. Confirm the vulnerability is fixed by attempting to access a file from a different user account (the request should now be rejected with 403 Forbidden)
- 8. Restart the Onyx service and monitor for any issues
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation2.0 h
- Implementation3.0 h
- Testing2.0 h
- Review / QA1.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $2,272.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2026-42277 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2026-42277 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data