You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sabre/dav appears to execute addressbook-query reports without first checking authorization on the target addressbook (e.g., anonymous request). Only when the query finds at least a matching card, the authorization will be performed based on each result card (see trace below on where the authorization is performed). However, in case no matching card is found, addressbookQueryReport would not check authorization and instead return an empty result with 207 status code.
This means it is possible for anyone to check if an addressbook contains cards matching a query filter or not. Tested this with Baïkal 0.9.4.
I also tried against a nextcloud 28 server, where I could not reproduce this behavior (i.e. I get the expected 401 in this case), even though nextcloud 28 also includes Sabre/DAV 4.5.0.
I also tried against a nextcloud 28 server, where I could not reproduce this behavior (i.e. I get the expected 401 in this case), even though nextcloud 28 also includes Sabre/DAV 4.5.0.
We are using a wrapper for DavAclPlugin to prevent some cases of user enumeration.
Hello,
sabre/dav appears to execute addressbook-query reports without first checking authorization on the target addressbook (e.g., anonymous request). Only when the query finds at least a matching card, the authorization will be performed based on each result card (see trace below on where the authorization is performed). However, in case no matching card is found,
addressbookQueryReport
would not check authorization and instead return an empty result with 207 status code.This means it is possible for anyone to check if an addressbook contains cards matching a query filter or not. Tested this with Baïkal 0.9.4.
I also tried against a nextcloud 28 server, where I could not reproduce this behavior (i.e. I get the expected 401 in this case), even though nextcloud 28 also includes Sabre/DAV 4.5.0.
HTTP trace - Query with no results:
Http trace (Query with results):
The text was updated successfully, but these errors were encountered: