~ / search / GHSA-jhg6-6qrx-38mr

GHSA-jhg6-6qrx-38mr

SpiceDB having multiple caveats on resources of the same type may improperly result in no permission

Source: GitHub Advisory Database (reviewed) Moderate CVE-2024-46989

Packages

EcosystemPackageAffectedFixed in
Go github.com/authzed/spicedb < 1.35.3 1.35.3

Details

As written in the advisory (Markdown source, shown as plain text).

## Background Multiple caveats over the same indirect subject type on the same relation can result in no permission being returned when permission is expected For example, given this schema: ``` definition user {} caveat somecaveat(somefield int) { somefield == 42 } definition group { relation member: user } definition resource { relation viewer: group#member with somecaveat permission view = folder->view } ``` If the resource has multiple groups, and each group is caveated, it is possible for the returned permission to be "no permission" when permission is expected. ## Impact Permission is returned as NO_PERMISSION when PERMISSION is expected on the CheckPermission API. ## Workarounds Do not use caveats or do not use caveats on an indirect subject type with multiple entries

References

External links from the advisory. They lead to third-party sites.