GHSA-7p8f-8hjm-wm92

Suggest an improvement
Source
https://github.com/advisories/GHSA-7p8f-8hjm-wm92
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/01/GHSA-7p8f-8hjm-wm92/GHSA-7p8f-8hjm-wm92.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-7p8f-8hjm-wm92
Aliases
Published
2022-01-13T15:05:41Z
Modified
2023-11-08T04:08:05.947876Z
Severity
  • CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Summary
Lookup operations do not take into account wildcards in SpiceDB
Details

Impact

Any user making use of a wildcard relationship under the right hand branch of an exclusion or within an intersection operation will see Lookup/LookupResources return a resource as "accessible" if it is not accessible by virtue of the inclusion of the wildcard in the intersection or the right side of the exclusion.

For example, given schema:

definition user {}

definition resource {
   relation viewer: user
   relation banned: user | user:*
   permission view = viewer - banned
}

If user:* is placed into the banned relation for a particular resource, view should return false for all resources. in v1.3.0, the wildcard is ignored entirely in lookup's dispatch, resulting in the banned wildcard being ignored in the exclusion.

Workarounds

Don't make use of wildcards on the right side of intersections or within exclusions.

References

https://github.com/authzed/spicedb/issues/358

For more information

If you have any questions or comments about this advisory: * Open an issue in SpiceDB * Ask a question in the SpiceDB Discord

References

Affected packages

Go / github.com/authzed/spicedb

Package

Name
github.com/authzed/spicedb
Purl
pkg:golang/github.com/authzed/spicedb

Affected ranges

Type
SEMVER
Events
Introduced
1.3.0
Fixed
1.4.0

Affected versions

1.*

1.3.0