VDB
Sign up
MEDIUM5.8

GHSA-fcv2-xgw5-pqxf

sigstore legacy TUF client allows for arbitrary file writes with target cache path traversal

Quick fix

GHSA-fcv2-xgw5-pqxf — github.com/sigstore/sigstore: upgrade to the fixed version with the command below.

go get github.com/sigstore/sigstore@v1.10.4

Details

## Summary

The legacy TUF client `pkg/tuf/client.go`, which supports caching target files to disk, constructs a filesystem path by joining a cache base directory with a target name sourced from signed target metadata, but it does not validate that the resulting path stays within the cache base directory.

Note that this should only affect clients that are directly using the TUF client in sigstore/sigstore or are using an older version of Cosign. As this TUF client implementation is deprecated, users should migrate to https://github.com/sigstore/sigstore-go/tree/main/pkg/tuf as soon as possible.

Note that this does not affect users of the public Sigstore deployment, where TUF metadata is validated by a quorum of trusted collaborators.

## Impact

A malicious TUF repository can trigger arbitrary file overwriting, limited to the permissions that the calling process has.

## Workarounds

Users can disable disk caching for the legacy client by setting `SIGSTORE_NO_CACHE=true` in the environment, migrate to https://github.com/sigstore/sigstore-go/tree/main/pkg/tuf, or upgrade to the latest sigstore/sigstore release.

Are you affected?

Enter the version of the package you're using.

Affected packages

Go/github.com/sigstore/sigstore
Introduced in: 0Fixed in: 1.10.4
Fixgo get github.com/sigstore/sigstore@v1.10.4

References