Summary
An Authenticated User can delete collections belonging to other users by directly sending a DELETE request to the collection endpoint. No ownership verification is performed before deleting collections.
Affected Version: 4.4.0 (latest Docker image at time of testing - November 2025)
Details
Affected Endpoints:
DELETE /api/collections/{id} - Normal collections
Root Cause:
delete_collection() function retrieves a collection by ID and deletes it without verifying if the requesting user owns the collection. The ownership check exists in the delete_smart_collection() function but it's missing from the normal collections deletion function.
Affected Code:
[REDACTED]
PoC
[REDACTED]
Impact
[REDACTED]
Mitigation / Remediation
[REDACTED]
I've tested this fix locally and it works as expected. The fix mirrors the check pattern used in delete_smart_collection() which seems secure and works as expected.
Summary
An Authenticated User can delete collections belonging to other users by directly sending a
DELETErequest to the collection endpoint. No ownership verification is performed before deleting collections.Affected Version:
4.4.0(latest Docker image at time of testing - November 2025)Details
Affected Endpoints:
DELETE /api/collections/{id}- Normal collectionsRoot Cause:
delete_collection()function retrieves a collection by ID and deletes it without verifying if the requesting user owns the collection. The ownership check exists in thedelete_smart_collection()function but it's missing from the normal collections deletion function.Affected Code:
[REDACTED]
PoC
[REDACTED]
Impact
[REDACTED]
Mitigation / Remediation
[REDACTED]
I've tested this fix locally and it works as expected. The fix mirrors the check pattern used in
delete_smart_collection()which seems secure and works as expected.