VYPR
High severityNVD Advisory· Published Jan 17, 2025· Updated Jan 22, 2025

IdP group membership revocation ignored in zot

CVE-2025-23208

Description

zot is a production-ready vendor-neutral OCI image registry. The group data stored for users in the boltdb database (meta.db) is an append-list so group revocations/removals are ignored in the API. SetUserGroups is alled on login, but instead of replacing the group memberships, they are appended. This may be due to some conflict with the group definitions in the config file, but that wasn't obvious to me if it were the case. Any Zot configuration that relies on group-based authorization will not respect group remove/revocation by an IdP. This issue has been addressed in version 2.1.2. All users are advised to upgrade. There are no known workarounds for this vulnerability.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
zotregistry.dev/zotGo
< 2.1.22.1.2

Affected products

1

Patches

1
002ac62d8a15

Merge commit from fork

https://github.com/project-zot/zotRamkumar ChinchaniJan 17, 2025via ghsa
2 files changed · +2 2
  • pkg/meta/boltdb/boltdb.go+1 1 modified
    @@ -1662,7 +1662,7 @@ func (bdw *BoltDB) SetUserGroups(ctx context.Context, groups []string) error {
     			return err
     		}
     
    -		userData.Groups = append(userData.Groups, groups...)
    +		userData.Groups = groups
     
     		err = bdw.setUserData(userid, tx, userData)
     
    
  • pkg/meta/dynamodb/dynamodb.go+1 1 modified
    @@ -1647,7 +1647,7 @@ func (dwr DynamoDB) SetUserGroups(ctx context.Context, groups []string) error {
     		return err
     	}
     
    -	userData.Groups = append(userData.Groups, groups...)
    +	userData.Groups = groups
     
     	return dwr.SetUserData(ctx, userData)
     }
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

5

News mentions

0

No linked articles in our index yet.