sigstore legacy TUF client allows for arbitrary file writes with target cache path traversal
Moderate severity
GitHub Reviewed
Published
Jan 22, 2026
in
sigstore/sigstore
•
Updated Jan 23, 2026
Description
Published to the GitHub Advisory Database
Jan 22, 2026
Reviewed
Jan 22, 2026
Published by the National Vulnerability Database
Jan 23, 2026
Last updated
Jan 23, 2026
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=truein the environment, migrate to https://github.com/sigstore/sigstore-go/tree/main/pkg/tuf, or upgrade to the latest sigstore/sigstore release.References