CVE-2025-49011 – github.com/authzed/spicedb
Package
Manager: go
Name: github.com/authzed/spicedb
Vulnerable Version: >=0 <1.44.2
Severity
Level: Low
CVSS v3.1: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
CVSS v4.0: CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
EPSS: 0.00035 pctl0.08634
Details
SpiceDB checks involving relations with caveats can result in no permission when permission is expected ### Impact On schemas involving arrows with caveats on the arrow’ed relation, when the path to resolve a CheckPermission request involves the evaluation of multiple caveated branches, requests may return a negative response when a positive response is expected. For example, given this schema: ``` definition user {} definition office { relation parent: office relation manager: user permission read = manager + parent->read } definition group { relation parent: office permission read = parent->read } definition document { relation owner: group with equals permission read = owner->read } caveat equals(actual string, required string) { actual == required } ``` and these relationships: ``` office:headoffice#manager@user:maria office:branch1#parent@office:headoffice group:admins#parent@office:branch1 group:managers#parent@office:headoffice document:budget#owner@group:admins[equals:{"required":"admin"}] document:budget#owner@group:managers[equals:{"required":"manager"}] ``` Permission for `'document:budget#read@user:maria with {"actual" : "admin"}'` is returned as NO_PERMISSION when HAS_PERMISSION is the correct answer. ### Patches Upgrade to v1.44.2. ### Workarounds Do not use caveats in your schema over an arrow’ed relation.
Metadata
Created: 2025-06-06T21:41:00Z
Modified: 2025-06-10T19:58:49Z
Source: https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2025/06/GHSA-cwwm-hr97-qfxm/GHSA-cwwm-hr97-qfxm.json
CWE IDs: ["CWE-358"]
Alternative ID: GHSA-cwwm-hr97-qfxm
Finding: F096
Auto approve: 1