[PR #23634] [CLOSED] fix: enforce collection ownership on process/web and process/text endpoints #42921

Closed
opened 2026-04-25 14:41:11 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/open-webui/open-webui/pull/23634
Author: @Classic298
Created: 4/12/2026
Status: Closed

Base: devHead: fix/retrieval-collection-write-access


📝 Commits (3)

  • eebe4e8 fix: enforce collection ownership on process/file, process/web, and process/text endpoints
  • edf51e5 Merge remote-tracking branch 'origin/dev' into fix/retrieval-collection-write-access
  • ca2f351 chore: adapt _verify_collection_write_access to upstream async DB migration

📊 Changes

1 file changed (+63 additions, -4 deletions)

View changed files

📝 backend/open_webui/routers/retrieval.py (+63 -4)

📄 Description

These endpoints accepted an arbitrary collection_name and would overwrite the target collection without verifying the caller owns the underlying resource. An attacker could destroy or poison any KB by supplying its UUID as the collection_name.

Adds _verify_collection_write_access that checks file and knowledge base ownership before allowing writes. Admins bypass the check.

Contributor License Agreement

Note

Deleting the CLA section will lead to immediate closure of your PR and it will not be merged in.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/open-webui/open-webui/pull/23634 **Author:** [@Classic298](https://github.com/Classic298) **Created:** 4/12/2026 **Status:** ❌ Closed **Base:** `dev` ← **Head:** `fix/retrieval-collection-write-access` --- ### 📝 Commits (3) - [`eebe4e8`](https://github.com/open-webui/open-webui/commit/eebe4e860af410f52650bc364508c94d04568919) fix: enforce collection ownership on process/file, process/web, and process/text endpoints - [`edf51e5`](https://github.com/open-webui/open-webui/commit/edf51e5c21d78a995aaee1f747a82f9ec63cd7f4) Merge remote-tracking branch 'origin/dev' into fix/retrieval-collection-write-access - [`ca2f351`](https://github.com/open-webui/open-webui/commit/ca2f351dd5ae7b5e50743a8a4ff7e8f7b1feddf2) chore: adapt _verify_collection_write_access to upstream async DB migration ### 📊 Changes **1 file changed** (+63 additions, -4 deletions) <details> <summary>View changed files</summary> 📝 `backend/open_webui/routers/retrieval.py` (+63 -4) </details> ### 📄 Description These endpoints accepted an arbitrary collection_name and would overwrite the target collection without verifying the caller owns the underlying resource. An attacker could destroy or poison any KB by supplying its UUID as the collection_name. Adds _verify_collection_write_access that checks file and knowledge base ownership before allowing writes. Admins bypass the check. ### Contributor License Agreement <!-- 🚨 DO NOT DELETE THE TEXT BELOW 🚨 Keep the "Contributor License Agreement" confirmation text intact. Deleting it will trigger the CLA-Bot to INVALIDATE your PR. Your PR will NOT be reviewed or merged until you check the box below confirming that you have read and agree to the terms of the CLA. --> - [X] By submitting this pull request, I confirm that I have read and fully agree to the [Contributor License Agreement (CLA)](https://github.com/open-webui/open-webui/blob/main/CONTRIBUTOR_LICENSE_AGREEMENT), and I am providing my contributions under its terms. > [!NOTE] > Deleting the CLA section will lead to immediate closure of your PR and it will not be merged in. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-25 14:41:11 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#42921