GO-2024-2608

Source
https://pkg.go.dev/vuln/GO-2024-2608
Import Source
https://vuln.go.dev/ID/GO-2024-2608.json
JSON Data
https://api.test.osv.dev/v1/vulns/GO-2024-2608
Aliases
Published
2024-03-11T20:07:44Z
Modified
2024-05-20T16:03:47Z
Summary
Minder access control bypass in github.com/stacklok/minder
Details

A Minder user can use the endpoints to access any repository in the DB, irrespective of who owns the repo and any permissions that user may have. The DB query used checks by repo owner, repo name and provider name (which is always "github"). These query values are not distinct for the particular user, as long as the user has valid credentials and a provider, they can set the repo owner/name to any value they want and the server will return information on this repo. DeleteRepositoryByName uses the same query and a user can delete another user's repo using this technique. The GetArtifactByName endpoint also uses this DB query.

Database specific
{
    "review_status": "REVIEWED",
    "url": "https://pkg.go.dev/vuln/GO-2024-2608"
}
References
Credits
    • dmjb

Affected packages

Go / github.com/stacklok/minder

Package

Name
github.com/stacklok/minder
View open source insights on deps.dev
Purl
pkg:golang/github.com/stacklok/minder

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
0.0.33

Ecosystem specific

{
    "imports": [
        {
            "path": "github.com/stacklok/minder/internal/db",
            "symbols": [
                "Queries.GetRepositoryByRepoName"
            ]
        },
        {
            "path": "github.com/stacklok/minder/internal/controlplane",
            "symbols": [
                "EntityContextProjectInterceptor",
                "ProjectAuthorizationInterceptor",
                "Server.DeleteRepositoryByName",
                "Server.GetArtifactByName",
                "Server.GetRepositoryByName",
                "Server.StartGRPCServer",
                "TokenValidationInterceptor"
            ]
        }
    ]
}