Repository navigation
Update vulnerable dependencies [SECURITY] - #2379
Open
pulumi-renovate[bot] wants to merge 1 commit into
Open
pulumi-renovate[bot] wants to merge 1 commit into
pulumi-renovate[bot] wants to merge 1 commit into
Conversation
Contributor
Author
|
Contributor
Does the PR have any schema changes?Generated by schema-tools v0.8.1. Looking good! No breaking changes found. Maintainer note: consult the runbook for dealing with any breaking changes. |
pulumi-renovate
Bot
force-pushed
the
renovate/security
branch
from
September 11, 2026 04:54
4b75fe0 to
ac290a9
Compare
pulumi-renovate
Bot
force-pushed
the
renovate/security
branch
from
September 17, 2026 22:17
ac290a9 to
4cc6b63
Compare
pulumi-renovate
Bot
force-pushed
the
renovate/security
branch
2 times, most recently
from
September 25, 2026 16:36
796b220 to
526c2ff
Compare
pulumi-renovate
Bot
force-pushed
the
renovate/security
branch
3 times, most recently
from
October 23, 2026 06:36
16829d3 to
751d218
Compare
pulumi-renovate
Bot
force-pushed
the
renovate/security
branch
5 times, most recently
from
November 3, 2026 07:28
b26d93d to
13fea13
Compare
pulumi-renovate
Bot
force-pushed
the
renovate/security
branch
from
November 8, 2026 18:32
13fea13 to
d2b5a29
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v6.0.0-alpha.4→v6.0.0-alpha.5v4.1.4→v4.1.6v1.18.7→v1.20.2v0.19.0→v0.21.0v1.41.0→v1.45.0v1.41.0→v1.45.0v1.44.0→v1.45.0v0.19.0→v0.21.0v0.58.0→v0.62.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
go-git: Worktree operations may follow symlinks
CVE-2026-71556 / GHSA-hc8v-wwc9-vgxm
More information
Details
Impact
A symlink traversal issue in
go-gitcould allow worktree operations to modify files outside the intended worktree path.The
worktreeFilesystemwrapper rejected dangerous path strings, including paths containing.git, parent-directory components, or control characters. However, it did not prevent filesystem operations from following symbolic links that were already present in the worktree.As a result, a path that is safe when evaluated as a string could still resolve into the repository's Git metadata directory. For example, if
sis a symbolic link to.git, writing tos/configwould modify.git/config.A symbolic link at the final path component could also be followed. For example, if
spoints directly to.git/config, openingsfor writing with truncation could overwrite the repository configuration.Exploitation requires an attacker to be able to introduce or control a symbolic link in the worktree and cause the application to perform a write through that path.
Applications using
storage/memoryfor their Storer, orgo-billy/memfsfor theirWorktree, are not affected by this vulnerability.Patches
The issue has been addressed by making the worktree filesystem wrapper a symlink-safe boundary.
Worktree operations now reject paths where an existing symbolic link in any path component could cause the operation to escape the intended worktree location, including symbolic links at the final component.
Users of filesystem-backed worktrees should upgrade to a patched version.
Credits
Thanks to @kodareef5 for reporting this issue and working with the go-git security team toward its resolution. 🥇
We would also like to thank @HughLewis20, who independently reported the same issue while a fix was already in progress.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
go-git: Malicious reference names may modify files outside the reference storage
CVE-2026-71557 / GHSA-qgq7-7hm3-q39j
More information
Details
Impact
A path traversal issue in
go-gitcould allow malicious reference names to access files outside the repository's intended reference storage.Loose references are stored under
.git/<reference-name>. The reference name was previously used as a path without verifying that the resolved path remained within the reference storage. A name such asrefs/heads/../../configcould therefore resolve to unrelated repository metadata such as.git/configor.git/HEAD.A malicious Git server could advertise such a reference name. The name may also survive refspec mapping; for example, it could be mapped to
refs/remotes/origin/../../configduring a clone or fetch operation.This vulnerability affects filesystem-backed repositories using the
storage/filesystempackage and itsdotgitreference storage. Users relying exclusively on the in-memory storage implementation,storage/memory, are not affected, because reference names are not resolved as filesystem paths.Exploitation requires an application using
go-gitwith filesystem-backed storage to interact with a malicious Git server or otherwise process attacker-controlled reference names.Patches
The issue has been addressed by validating reference names at the
dotgitstorage entry points and rejecting names whose resolved paths could escape the reference storage.Users of filesystem-backed storage should upgrade to a patched version.
Workarounds
Applications that exclusively use
storage/memoryare not affected and do not require a workaround for this vulnerability.For applications using filesystem-backed storage, avoid cloning from or fetching from untrusted Git servers until an upgrade is possible.
Applications that directly construct or process reference names may also validate them before passing them to filesystem-backed
go-gitstorage. Application-level validation should only be considered a temporary mitigation and does not replace upgrading to a patched version.References
Credits
Thanks to @Saku0512 for reporting this issue and @Sahana2524 for proposing the initial fix. 🙇
Severity
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
go-git: Worktree operations may follow symlinks
CVE-2026-71556 / GHSA-hc8v-wwc9-vgxm / GO-2026-6213
More information
Details
Impact
A symlink traversal issue in
go-gitcould allow worktree operations to modify files outside the intended worktree path.The
worktreeFilesystemwrapper rejected dangerous path strings, including paths containing.git, parent-directory components, or control characters. However, it did not prevent filesystem operations from following symbolic links that were already present in the worktree.As a result, a path that is safe when evaluated as a string could still resolve into the repository's Git metadata directory. For example, if
sis a symbolic link to.git, writing tos/configwould modify.git/config.A symbolic link at the final path component could also be followed. For example, if
spoints directly to.git/config, openingsfor writing with truncation could overwrite the repository configuration.Exploitation requires an attacker to be able to introduce or control a symbolic link in the worktree and cause the application to perform a write through that path.
Applications using
storage/memoryfor their Storer, orgo-billy/memfsfor theirWorktree, are not affected by this vulnerability.Patches
The issue has been addressed by making the worktree filesystem wrapper a symlink-safe boundary.
Worktree operations now reject paths where an existing symbolic link in any path component could cause the operation to escape the intended worktree location, including symbolic links at the final component.
Users of filesystem-backed worktrees should upgrade to a patched version.
Credits
Thanks to @kodareef5 for reporting this issue and working with the go-git security team toward its resolution. 🥇
We would also like to thank @HughLewis20, who independently reported the same issue while a fix was already in progress.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:LReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
go-git: Malicious reference names may modify files outside the reference storage
CVE-2026-71557 / GHSA-qgq7-7hm3-q39j / GO-2026-6214
More information
Details
Impact
A path traversal issue in
go-gitcould allow malicious reference names to access files outside the repository's intended reference storage.Loose references are stored under
.git/<reference-name>. The reference name was previously used as a path without verifying that the resolved path remained within the reference storage. A name such asrefs/heads/../../configcould therefore resolve to unrelated repository metadata such as.git/configor.git/HEAD.A malicious Git server could advertise such a reference name. The name may also survive refspec mapping; for example, it could be mapped to
refs/remotes/origin/../../configduring a clone or fetch operation.This vulnerability affects filesystem-backed repositories using the
storage/filesystempackage and itsdotgitreference storage. Users relying exclusively on the in-memory storage implementation,storage/memory, are not affected, because reference names are not resolved as filesystem paths.Exploitation requires an application using
go-gitwith filesystem-backed storage to interact with a malicious Git server or otherwise process attacker-controlled reference names.Patches
The issue has been addressed by validating reference names at the
dotgitstorage entry points and rejecting names whose resolved paths could escape the reference storage.Users of filesystem-backed storage should upgrade to a patched version.
Workarounds
Applications that exclusively use
storage/memoryare not affected and do not require a workaround for this vulnerability.For applications using filesystem-backed storage, avoid cloning from or fetching from untrusted Git servers until an upgrade is possible.
Applications that directly construct or process reference names may also validate them before passing them to filesystem-backed
go-gitstorage. Application-level validation should only be considered a temporary mitigation and does not replace upgrading to a patched version.References
Credits
Thanks to @Saku0512 for reporting this issue and @Sahana2524 for proposing the initial fix. 🙇
Severity
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:LReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Worktree operations may follow symlinks in github.com/go-git/go-git
CVE-2026-71556 / GHSA-hc8v-wwc9-vgxm / GO-2026-6213
More information
Details
Worktree operations may follow symlinks in github.com/go-git/go-git
Severity
Unknown
References
This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).
Path traversal via crafted reference names in github.com/go-git/go-git
CVE-2026-71557 / GHSA-qgq7-7hm3-q39j / GO-2026-6214
More information
Details
Path traversal via crafted reference names in github.com/go-git/go-git
Severity
Unknown
References
This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).
Go JOSE: DoS when parsing JWKs that contain RSA keys
CVE-2026-116587 / GHSA-mgcc-cww5-fp2q
More information
Details
Summary
A crafted RSA key inside a JWK can cause operations that parse JWKs to consume excess CPU.
Details
go-jose does not check for bounds on RSA modulus and primes before validating them. Values are passed directly to
crypto/rsa.PrivateKey.Validate(). On Go 1.24+, this takes cubic time complexity with respect to the RSA modulus and primes. This allows an attacker to supply a crafted JWK to consume excessive CPU.https://github.com/go-jose/go-jose/blob/5b371aecfcf7aabe06068d67da4344591ecddc76/jwk.go#L655-L700
Proof of concept
No special configuration of go-jose is required to reproduce this vulnerability.
Impact
Denial of service vulnerability. Any application that uses go-jose to parse JWKs from untrusted sources is affected and should patch immediately.
Credits
Reported by Yuval Saggie and Mor Weinberger (powered by Echo Frontier)
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Go JOSE: Panic during CBC-HMAC processing
CVE-2026-116585 / GHSA-4w3g-jfj2-cw2q
More information
Details
Summary
Decrypting a ciphertext with "A128CBC-HS256", "A192CBC-HS384", or "A256CBC-HS512" can result in a panic on untrusted input.
Note this advisory is the same as GHSA-6mp9-8xrw-74r4.
Details
Insufficient validation of parameters can lead to attempting to index into an empty buffer. See https://github.com/go-jose/go-jose/pull/292.
Workarounds
If the application does not require the CBC-HMAC modes for content encryption, and is using github.com/go-jose/go-jose/v4, do not include them in the list of ContentEncryption algorithms passed to ParseEncrypted / ParseEncryptedJSON / ParseEncryptedCompact.
Impact
Denial of service vulnerability. Any application which decrypts untrusted ciphertexts with the indicated algorithms is affected.
Acknowledgements
Thanks to Joshua Rogers of AISLE Research for reporting this problem.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Go JOSE: Panics in JSON parsing
CVE-2026-116586 / GHSA-vvm8-gf78-28g4
More information
Details
Summary
Parsing deeply nested JSON structures can hit Go's stack limit, causing the application to crash.
Note: this advisory is the same as GHSA-6mp9-8xrw-74r4.
Impact
Denial of service vulnerability. Any application that parses untrusted JSON via go-jose is exposed.
Workarounds
Reject large inputs before parsing them.
Acknowledgements
Thanks to Dohyun Kim (@azza999), Joshua Rogers of AISLE Research, and Sueun Cho for alerting us to the need to patch this.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Go JOSE: Panic during CBC-HMAC processing
CVE-2026-116585 / GHSA-4w3g-jfj2-cw2q
More information
Details
Summary
Decrypting a ciphertext with "A128CBC-HS256", "A192CBC-HS384", or "A256CBC-HS512" can result in a panic on untrusted input.
Note this advisory is the same as GHSA-6mp9-8xrw-74r4.
Details
Insufficient validation of parameters can lead to attempting to index into an empty buffer. See https://github.com/go-jose/go-jose/pull/292.
Workarounds
If the application does not require the CBC-HMAC modes for content encryption, and is using github.com/go-jose/go-jose/v4, do not include them in the list of ContentEncryption algorithms passed to ParseEncrypted / ParseEncryptedJSON / ParseEncryptedCompact.
Impact
Denial of service vulnerability. Any application which decrypts untrusted ciphertexts with the indicated algorithms is affected.
Acknowledgements
Thanks to Joshua Rogers of AISLE Research for reporting this problem.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:NReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Go JOSE: Panics in JSON parsing
CVE-2026-116586 / GHSA-vvm8-gf78-28g4
More information
Details
Summary
Parsing deeply nested JSON structures can hit Go's stack limit, causing the application to crash.
Note: this advisory is the same as GHSA-6mp9-8xrw-74r4.
Impact
Denial of service vulnerability. Any application that parses untrusted JSON via go-jose is exposed.
Workarounds
Reject large inputs before parsing them.
Acknowledgements
Thanks to Dohyun Kim (@azza999), Joshua Rogers of AISLE Research, and Sueun Cho for alerting us to the need to patch this.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:NReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Go JOSE: DoS when parsing JWKs that contain RSA keys
CVE-2026-116587 / GHSA-mgcc-cww5-fp2q
More information
Details
Summary
A crafted RSA key inside a JWK can cause operations that parse JWKs to consume excess CPU.
Details
go-jose does not check for bounds on RSA modulus and primes before validating them. Values are passed directly to
crypto/rsa.PrivateKey.Validate(). On Go 1.24+, this takes cubic time complexity with respect to the RSA modulus and primes. This allows an attacker to supply a crafted JWK to consume excessive CPU.https://github.com/go-jose/go-jose/blob/5b371aecfcf7aabe06068d67da4344591ecddc76/jwk.go#L655-L700
Proof of concept
No special configuration of go-jose is required to reproduce this vulnerability.
Impact
Denial of service vulnerability. Any application that uses go-jose to parse JWKs from untrusted sources is affected and should patch immediately.
Credits
Reported by Yuval Saggie and Mor Weinberger (powered by Echo Frontier)
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Panic on two-block frames in github.com/klauspost/compress
CVE-2026-116591 / GHSA-fpmh-frq8-7rj8 / GO-2026-6865
More information
Details
Panic on two-block frames in github.com/klauspost/compress
Severity
Unknown
References
This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).
OpenTelemetry-Go: Log gRPC exporter ignores env TLS certs, bypassing mTLS/pinning
CVE-2026-81871 / GHSA-w34q-cm8f-9c5x
More information
Details
Summary
The OTLP log gRPC exporter loads TLS settings from environment variables but does not apply them when creating gRPC transport credentials. Operators who rely on
OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE,OTEL_EXPORTER_OTLP_CERTIFICATE, or related client certificate variables for CA pinning or mTLS get a connection that falls back to system roots and omits the env-supplied client certificate. A network attacker who can intercept or spoof the collector connection with a system-trusted certificate can read or alter log telemetry.Introduced in commit: d99c76f
Details
The affected code is in
exporters/otlp/otlplog/otlploggrpc.newConfigresolves env-based TLS configuration intocfg.tlsCfgatexporters/otlp/otlplog/otlploggrpc/config.go:106-116. The finding also identifiesloadEnvTLSatconfig.go:451-492as the code that builds a*tls.ConfigcontainingRootCAsand client certificates fromOTEL_EXPORTER_OTLP[_LOGS]_CERTIFICATEandOTEL_EXPORTER_OTLP[_LOGS]_CLIENT_CERTIFICATE/KEY.However,
newGRPCDialOptionsinexporters/otlp/otlplog/otlploggrpc/client.go:83-92only checkscfg.gRPCCredentialsandcfg.insecure. When neither is set, which is the normal env-only TLS configuration path, it usescredentials.NewTLS(nil). That default trusts the host system root CAs and contains no env-supplied client certificate. The finding evidence reports no othertlsCfguse in the package, so env-based CA pinning and mTLS settings are loaded but not enforced.PoC
validation-artifact.zip
The validation artifact contains a ready-to-run test at
validation-artifact.zip:./poc_env_tls_ignored_test.goand brief instructions atvalidation-artifact.zip:./README.md.From a checkout of
pellared/opentelemetry-goat commitd99c76f, with Go module dependencies available:The test generates a private CA and a TLS gRPC logs server certificate signed by that CA. It sets:
Expected output includes an
unknown authorityfailure for the first export call even though the env certificate points to the server CA, followed by a passing test after the samecfg.tlsCfgis explicitly wired throughWithTLSCredentials:This demonstrates that the env CA is parsed into
cfg.tlsCfgbut ignored by the default gRPC dial path.Impact
This is improper TLS certificate validation and endpoint authentication caused by ignoring configured trust material. Users of the OTLP log gRPC exporter who configure TLS, CA pinning, or mTLS through environment variables are impacted when they do not also supply explicit
WithTLSCredentials. TLS still occurs with system roots, but the intended private CA pinning and client certificate authentication are bypassed. An attacker with a suitable network position and a system-trusted certificate for the collector endpoint can intercept or tamper with log telemetry that operators expected to be protected by the configured CA or mTLS policy.Severity
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
OpenTelemetry-Go: Log gRPC exporter ignores env TLS certs, bypassing mTLS/pinning
CVE-2026-81871 / GHSA-w34q-cm8f-9c5x / GO-2026-6508
More information
Details
Summary
The OTLP log gRPC exporter loads TLS settings from environment variables but does not apply them when creating gRPC transport credentials. Operators who rely on
OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE,OTEL_EXPORTER_OTLP_CERTIFICATE, or related client certificate variables for CA pinning or mTLS get a connection that falls back to system roots and omits the env-supplied client certificate. A network attacker who can intercept or spoof the collector connection with a system-trusted certificate can read or alter log telemetry.Introduced in commit: d99c76f
Details
The affected code is in
exporters/otlp/otlplog/otlploggrpc.newConfigresolves env-based TLS configuration intocfg.tlsCfgatexporters/otlp/otlplog/otlploggrpc/config.go:106-116. The finding also identifiesloadEnvTLSatconfig.go:451-492as the code that builds a*tls.ConfigcontainingRootCAsand client certificates fromOTEL_EXPORTER_OTLP[_LOGS]_CERTIFICATEandOTEL_EXPORTER_OTLP[_LOGS]_CLIENT_CERTIFICATE/KEY.However,
newGRPCDialOptionsinexporters/otlp/otlplog/otlploggrpc/client.go:83-92only checkscfg.gRPCCredentialsandcfg.insecure. When neither is set, which is the normal env-only TLS configuration path, it usescredentials.NewTLS(nil). That default trusts the host system root CAs and contains no env-supplied client certificate. The finding evidence reports no othertlsCfguse in the package, so env-based CA pinning and mTLS settings are loaded but not enforced.PoC
validation-artifact.zip
The validation artifact contains a ready-to-run test at
validation-artifact.zip:./poc_env_tls_ignored_test.goand brief instructions atvalidation-artifact.zip:./README.md.From a checkout of
pellared/opentelemetry-goat commitd99c76f, with Go module dependencies available:The test generates a private CA and a TLS gRPC logs server certificate signed by that CA. It sets:
Expected output includes an
unknown authorityfailure for the first export call even though the env certificate points to the server CA, followed by a passing test after the samecfg.tlsCfgis explicitly wired throughWithTLSCredentials:This demonstrates that the env CA is parsed into
cfg.tlsCfgbut ignored by the default gRPC dial path.Impact
This is improper TLS certificate validation and endpoint authentication caused by ignoring configured trust material. Users of the OTLP log gRPC exporter who configure TLS, CA pinning, or mTLS through environment variables are impacted when they do not also supply explicit
WithTLSCredentials. TLS still occurs with system roots, but the intended private CA pinning and client certificate authentication are bypassed. An attacker with a suitable network position and a system-trusted certificate for the collector endpoint can intercept or tamper with log telemetry that operators expected to be protected by the configured CA or mTLS policy.Severity
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:NReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
OpenTelemetry-Go: Log gRPC exporter ignores env TLS certs, bypassing mTLS/pinning in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc
CVE-2026-81871 / GHSA-w34q-cm8f-9c5x / GO-2026-6508
More information
Details
OpenTelemetry-Go: Log gRPC exporter ignores env TLS certs, bypassing mTLS/pinning in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc
Severity
Unknown
References
This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).
OpenTelemetry-Go: Exporter config logging may leak endpoint URLs in info logs
CVE-2026-81870 / GHSA-8wmf-6v46-5gfg
More information
Details
Summary
OpenTelemetry Go versions 1.5.0 through 1.44.0 can include trace exporter endpoint configuration in an internal diagnostic log emitted when an SDK
TracerProvideris created. The default OpenTelemetry logger does not emit this event. Exposure requires an application to install a logger that enables OpenTelemetry's internal Info-level diagnostics and for someone other than the intended audience to have access to those logs.The logged configuration can disclose the address of the trace collector and whether the OTLP/HTTP connection is configured as insecure. The Zipkin exporter logs its complete collector URL, so credentials in URL userinfo or tokens in the query string are also disclosed if an application embeds them there. OTLP authentication headers, TLS key material, and exported span data are not included in this log.
Exporter
MarshalLogimplementations that caused this configuration to be included in internal logs were introduced bya1fff3c.Details
When
sdk/trace.NewTracerProviderconstructs a provider, it records aTracerProvider createdinternal Info event containing the provider configuration. In affected versions, the configuration'sMarshalLogmethods recursively include:This causes the following values to be present in the event:
Insecureflag; andOpenTelemetry Go does not emit this event with its default logger, which only emits errors. An application must explicitly configure a sufficiently verbose logger with
otel.SetLogger. The requiredlogrverbosity is version-dependent:V(1)for this Info event; andV(4).OTLP header configuration is not part of the marshaled object, so credentials supplied with
WithHeadersor the corresponding environment variables are not exposed. The documented OTLPWithEndpointinput is a collector address rather than a credential-bearing URL. The higher-risk case is therefore the Zipkin collector URL, which is retained and logged in full, or an application passing sensitive data in an OTLP endpoint outside the documented format.Proof of concept
The following program demonstrates the behavior with OpenTelemetry Go 1.44.0. It deliberately places credentials and a token in the Zipkin collector URL and enables internal Info logging:
The
TracerProvider createdevent contains:For versions before 1.15.0, set
funcr.Options{Verbosity: 1}instead.Impact
This is a conditional disclosure through application logs. Affected applications must enable verbose OpenTelemetry internal diagnostics and configure a trace exporter containing information they do not intend to expose to readers of those logs. In that configuration, a person or system with log access can learn the trace collector address and internal network topology. If credentials or tokens are embedded directly in a Zipkin collector URL, those values can also be recovered from the logs.
There is no exposure with the default OpenTelemetry logger, and the vulnerable log is generated from local application configuration rather than remotely supplied span data. OTLP authentication headers, certificate or private-key contents, and telemetry payloads are not logged by this path.
Remediation
Upgrade the affected OpenTelemetry Go modules to version 1.45.0 or later. The fix in
3a1412dstops recursively marshaling exporter and client configuration and records their types instead.If an immediate upgrade is not possible:
Severity
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:NReferences