Skip to content

fix(deps): update module github.com/sigstore/rekor to v1.5.2 [security]#888

Open
renovate-bot wants to merge 1 commit into
slsa-framework:mainfrom
renovate-bot:renovate/go-github.com-sigstore-rekor-vulnerability
Open

fix(deps): update module github.com/sigstore/rekor to v1.5.2 [security]#888
renovate-bot wants to merge 1 commit into
slsa-framework:mainfrom
renovate-bot:renovate/go-github.com-sigstore-rekor-vulnerability

Conversation

@renovate-bot

@renovate-bot renovate-bot commented Apr 1, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
github.com/sigstore/rekor v1.3.8v1.5.2 age confidence

Rekor affected by Server-Side Request Forgery (SSRF) via provided public key URL

CVE-2026-24117 / GHSA-4c4x-jm2x-pf9j

More information

Details

Summary

/api/v1/index/retrieve supports retrieving a public key via a user-provided URL, allowing attackers to trigger SSRF to arbitrary internal services.

Since the SSRF only can trigger GET requests, the request cannot mutate state. The response from the GET request is not returned to the caller so data exfiltration is not possible. A malicious actor could attempt to probe an internal network through Blind SSRF.

Impact
  • SSRF to cloud metadata (169.254.169.254)
  • SSRF to internal Kubernetes APIs
  • SSRF to any service accessible from Fulcio's network
Patches

Upgrade to v1.5.0. Note that this is a breaking change to the search API and fully disables lookups by URL. If you require this feature, please reach out and we can discuss alternatives.

Workarounds

Disable the search endpoint with --enable_retrieve_api=false.

Severity

  • CVSS Score: 5.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Rekor's COSE v0.0.1 entry type nil pointer dereference in Canonicalize via empty Message

CVE-2026-23831 / GHSA-273p-m2cw-6833

More information

Details

Summary

Rekor’s cose v0.0.1 entry implementation can panic on attacker-controlled input when canonicalizing a proposed entry with an empty spec.message. validate() returns nil (success) when message is empty, leaving sign1Msg uninitialized, and Canonicalize() later dereferences v.sign1Msg.Payload.

Impact

A malformed proposed entry of the cose/v0.0.1 type can cause a panic on a thread within the Rekor process. The thread is recovered so the client receives a 500 error message and service still continues, so the availability impact of this is minimal.

Patches

Upgrade to v1.5.0

Workarounds

None

Severity

  • CVSS Score: 5.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Rekor has an OOM Condition due to Unbounded gzip Decompression in Alpine APK Parsing Logic

CVE-2026-48702 / GHSA-47q9-m4ww-924m

More information

Details

Description

The Package.Unmarshal() function in pkg/types/alpine/apk.go decompresses the signature and control gzip members of an APK file into in-memory buffers without bounding the total decompressed size. The existing max_apk_metadata_size check (default 1MB) is only applied to individual tar entry header sizes after decompression completes, so it does not prevent a decompression bomb from consuming unbounded heap memory.

An attacker can craft a gzip stream that compresses at a ~1000:1 ratio (e.g., 2MB compressed zeros → 2GB decompressed). When submitted as spec.package.content in an Alpine ProposedEntry, the server decompresses the full payload into memory during request processing, triggering a fatal Go runtime out-of-memory error or OS OOM-kill that cannot be caught by the server's recover() middleware.

This is reachable via two unauthenticated endpoints:

  • POST /api/v1/log/entries (createLogEntry)
  • POST /api/v1/log/entries/retrieve (searchLogQuery)

Both invoke V001Entry.Canonicalize()fetchExternalEntities()apk.Unmarshal(packageData), which performs the unbounded decompression.

Workarounds

There is no effective workaround. Setting max_request_body_size reduces but does not eliminate exposure due to the ~1000:1 compression ratio (a 1MB body limit still allows ~1GB heap allocation). Setting max_apk_metadata_size has no effect on this vulnerability since the check is applied after decompression.

Severity

  • CVSS Score: 7.5 / 10 (High)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Release Notes

sigstore/rekor (github.com/sigstore/rekor)

v1.5.2

Compare Source

Features

  • Support restricting kinds on insertion (#​2814)

Bug Fixes

  • alpine: Enforce max size limit on decompression (#​2831)
  • fix(trillianclient): strip dns:/// scheme from TLS ServerName in gRPC dial (#​2812)
  • Fix internal error detail leakage in 500 responses (#​2801)
  • add checks to ensure returned entries match client inputs to rekor-cli (#​2799)
  • add defensive check to ensure tid is in config ahead of getting client (#​2795)
  • add nil pointer check to resolve fuzzing crash (#​2807)

Improvements

  • restapi: include inactiveShards in the homepage total count (#​2797)
  • client: surface last-response details after retries are exhausted (#​2796)

v1.5.1

Compare Source

Features

  • optimize memory for DSSE v0.0.1 processing (#​2766)

Bug Fixes

  • Type assert the entry bundle when verifying inclusion proof (#​2755)
  • return correct errors in rare failure situations (#​2753)
  • raise error if decoding hash fails during inclusion proof (#​2754)

v1.5.0

Compare Source

This release fixes GHSA-273p-m2cw-6833 and GHSA-4c4x-jm2x-pf9j. Note that this
drops support for fetching public keys via URL when querying the search API.

Vulnerability Fixes

  • Handle malformed COSE and DSSE entries (#​2729)
  • Drop support for fetching public keys by URL in the search index (#​2731)

Features

  • Add support for a custom TLS config for clients (#​2709)

v1.4.3

Compare Source

This release reduces dependencies for a number of exported packages.

This release also changes the format of the binary and container signature, which is now a
Sigstore bundle. To verify a release, use the
latest Cosign 3.x, verifying with
cosign verify-blob --bundle <artifact>-keyless.sigstore.json <artifact>.

Improvements

  • use interruptable context to elegantly handle signals in rekor-cli (#​2681)
  • restapi: Don't log client errors as errors (#​2680)
  • pkg: separate pki types from implementations (#​2668)
  • e2e: don't mix e2e and regular utilities (#​2672)
  • pkg: remove viper config from spec definitions (#​2669)
  • log: remove zap & go-chi dependecy from pkg/types (#​2667)
  • chore: update go-openapi/runtime to v0.29.0 (#​2670)
  • chore: remove double imported mapstructure pkg (#​2671)
  • remove archived dependency and use stdlib slices (#​2650)

Documentation

  • (docs): guard unsafe int/uint conversions flagged by gosec (#​2679)

Contributors

  • AdamKorcz
  • Bob Callaway
  • Jussi Kukkonen
  • Sachin Sampras M
  • Tõnis Tiigi

v1.4.2

Compare Source

This release includes some performance optimizations and a bug fix for publishing events to a pub/sub topic.

Fixes

  • use pubsub client to check IAM permissions (#​2605)
  • process type contents serially (#​2604)
  • move to direct decoding instead of mapstructure (#​2598)
  • optimize performance of regex operations (#​2603)

Contributors

  • Bob Callaway

v1.4.1

Compare Source

This release includes updated dependencies for known CVEs, as well as some optimizations to minimize gRPC traffic between Rekor and Trillian.

Fixes

  • use less expensive gRPC call to implement GetLeafAndProofByHash (#​2581)
  • move to per-shard trillian client manager (#​2564)
  • use cheaper gRPC endpoint when we already have the inclusion proof (#​2580)
  • simplify hash and signature verification in rekord type (#​2579)
  • use correct type; just look for len() instead of nil check (#​2576)
  • return correct error if GetLeafAndProofByHash fails (#​2574)
  • fix incorrect client lb policy in test config (#​2551)
  • numerous upgraded dependencies

Contributors

  • Bob Callaway
  • Carlos Alexandro Becker

v1.4.0

Compare Source

This is a minor version release given the removal of the stable checkpoint feature. To our knowledge, this was not
used effectively anywhere and therefore was removed from Rekor v1. Witnessing will be added as part of the upcoming
Rekor v2 release.

Features

  • enable retries and timeouts on GCP KMS calls (#​2548)
  • allow configuring gRPC default service config for trillian client load balancing & timeouts (#​2549)
  • move context handling in trillian RPC calls to be request based and idiomatic (#​2536)

Fixes

  • Fix docker compose up --wait failing when Trillian server isn't healthy (#​2473)
  • better mysql healthcheck (#​2459)
  • numerous upgraded dependencies, including moving to go 1.24

Removed

  • remove stable checkpoint feature (#​2537)
  • Don't initialize index storage with stable checkpoint publishing (#​2486)

Contributors

  • Bob Callaway
  • Carlos Tadeu Panato Junior
  • Emmanuel Ferdman
  • Hayden B
  • Ramon Petgrave

v1.3.10

Compare Source

Note that Rekor v1 is in maintenance mode as we are actively developing
its successor, Rekor v2, designed to be easy to maintain and cheaper to operate.. See the
README
for more information.

Features

  • Added --client-signing-algorithms flag (#​1974)

Fixes / Misc

  • emit unpopulated values when marshalling (#​2438)
  • pkg/api: better logs when algorithm registry rejects a key (#​2429)
  • chore: improve mysql readiness checks (#​2397)

Contributors

  • Bob Callaway
  • cangqiaoyuzhuo
  • Carlos Tadeu Panato Junior
  • cpanato
  • Hayden B
  • Praful Khanduri
  • Ramon Petgrave
  • Riccardo Schirone
  • rubyisrust
  • Sascha Grunert

v1.3.9

Compare Source

Features

  • Cache checkpoint for inactive shards (#​2332)
  • Support per-shard signing keys (#​2330)

Contributors

  • Hayden B

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 4am"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@forking-renovate

forking-renovate Bot commented Apr 1, 2026

Copy link
Copy Markdown

ℹ️ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 38 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.23.2 -> 1.25.0
github.com/go-openapi/runtime v0.28.0 -> v0.29.4
github.com/google/go-cmp v0.6.0 -> v0.7.0
github.com/google/trillian v1.7.1 -> v1.7.3
github.com/secure-systems-lab/go-securesystemslib v0.9.0 -> v0.11.0
github.com/sigstore/sigstore v1.8.12 -> v1.10.6
github.com/google/go-containerregistry v0.20.3 -> v0.20.7
github.com/spf13/cobra v1.8.1 -> v1.10.2
golang.org/x/mod v0.25.0 -> v0.34.0
sigs.k8s.io/release-utils v0.9.0 -> v0.12.4
github.com/go-jose/go-jose/v4 v4.0.5 -> v4.1.4
go.opentelemetry.io/auto/sdk v1.1.0 -> v1.2.1
go.opentelemetry.io/otel/metric v1.33.0 -> v1.43.0
github.com/containerd/stargz-snapshotter/estargz v0.16.3 -> v0.18.1
github.com/docker/cli v27.5.0+incompatible -> v29.0.3+incompatible
github.com/docker/docker-credential-helpers v0.8.2 -> v0.9.3
github.com/go-openapi/analysis v0.23.0 -> v0.25.0
github.com/go-openapi/errors v0.22.0 -> v0.22.7
github.com/go-openapi/jsonpointer v0.21.0 -> v0.22.5
github.com/go-openapi/jsonreference v0.21.0 -> v0.21.5
github.com/go-openapi/loads v0.22.0 -> v0.23.3
github.com/go-openapi/spec v0.21.0 -> v0.22.4
github.com/go-openapi/validate v0.24.0 -> v0.25.2
github.com/google/certificate-transparency-go v1.2.1 -> v1.3.2-0.20250507091337-0eddb39e94f8
github.com/hashicorp/go-retryablehttp v0.7.7 -> v0.7.8
github.com/hashicorp/hcl v1.0.1-vault-5 -> v1.0.1-vault-7
github.com/opencontainers/image-spec v1.1.0 -> v1.1.1
github.com/sigstore/protobuf-specs v0.3.3 -> v0.5.1
github.com/sirupsen/logrus v1.9.3 -> v1.9.4
github.com/vbatts/tar-split v0.11.6 -> v0.12.2
go.uber.org/zap v1.27.0 -> v1.28.0
golang.org/x/crypto v0.36.0 -> v0.50.0
golang.org/x/net v0.38.0 -> v0.53.0
golang.org/x/sync v0.15.0 -> v0.20.0
golang.org/x/sys v0.31.0 -> v0.43.0
golang.org/x/term v0.30.0 -> v0.42.0
golang.org/x/text v0.23.0 -> v0.36.0
google.golang.org/grpc v1.69.4 -> v1.80.0
google.golang.org/protobuf v1.36.3 -> v1.36.11

@renovate-bot
renovate-bot requested a review from a team as a code owner April 1, 2026 01:55
@renovate-bot
renovate-bot force-pushed the renovate/go-github.com-sigstore-rekor-vulnerability branch from 40c5733 to 519cf6b Compare June 30, 2026 16:11
@renovate-bot renovate-bot changed the title fix(deps): update module github.com/sigstore/rekor to v1.5.0 [security] fix(deps): update module github.com/sigstore/rekor to v1.5.2 [security] Jun 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant