chore(deps): update module go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp to v1.43.0 [security] - #12
Conversation
…lptrace/otlptracehttp to v1.43.0 [security]
ℹ️ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
There was a problem hiding this comment.
Pull request overview
Updates OpenTelemetry OTLP trace HTTP exporter dependencies to pick up the upstream fix for unbounded HTTP response body reads (CVE-2026-39882), and refreshes related transitive Go module dependencies in the module graph.
Changes:
- Bump
go.opentelemetry.io/otel/exporters/otlp/otlptraceand.../otlptracehttpfromv1.39.0tov1.43.0. - Update related dependencies pulled in by the upgrade (notably
go.opentelemetry.io/proto/otlpandgoogle.golang.org/grpc) and reconcilego.sum.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| go.mod | Upgrades OTLP trace exporter modules and refreshes associated direct/indirect dependency versions. |
| go.sum | Adds new checksums for the upgraded OpenTelemetry modules and updated transitive dependencies. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -64,19 +64,19 @@ require ( | |||
| go.opentelemetry.io/contrib/instrumentation/runtime v0.45.0 | |||
| go.opentelemetry.io/otel v1.43.0 | |||
| go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.27.0 | |||
|
Closing: opened during a CVE-remediation test session on 2026-06-15; not needed (superseded by consolidated grouped/direct-only/severity-filtered config). Sorry for the noise. |
This PR contains the following updates:
v1.39.0→v1.43.0opentelemetry-go: OTLP HTTP exporters read unbounded HTTP response bodies
CVE-2026-39882 / GHSA-w8rr-5gcm-pp58 / GO-2026-4985
More information
Details
overview:
this report shows that the otlp HTTP exporters (traces/metrics/logs) read the full HTTP response body into an in-memory
bytes.Bufferwithout a size cap.this is exploitable for memory exhaustion when the configured collector endpoint is attacker-controlled (or a network attacker can mitm the exporter connection).
severity
HIGH
not claiming: this is a remote dos against every default deployment.
claiming: if the exporter sends traces to an untrusted collector endpoint (or over a network segment where mitm is realistic), that endpoint can crash the process via a large response body.
callsite (pinned):
permalinks (pinned):
root cause:
each exporter client reads
resp.Bodyusingio.Copy(&respData, resp.Body)into abytes.Bufferon both success and error paths, with no upper bound.impact:
a malicious collector can force large transient heap allocations during export (peak memory scales with attacker-chosen response size) and can potentially crash the instrumented process (oom).
affected component:
repro (local-only):
unzip poc.zip -d poc cd poc make canonical resp_bytes=33554432 chunk_delay_ms=0expected output contains:
control (same env, patched target):
unzip poc.zip -d poc cd poc make control resp_bytes=33554432 chunk_delay_ms=0expected control output contains:
attachments: poc.zip (attached)
PR_DESCRIPTION.md
attack_scenario.md
poc.zip
Fixed in: https://github.com/open-telemetry/opentelemetry-go/pull/8108
Severity
CVSS:3.1/AV:A/AC:H/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).
Oversized OTLP HTTP response bodies can cause memory exhaustion in go.opentelemetry.io/otel/exporters/otlp
CVE-2026-39882 / GHSA-w8rr-5gcm-pp58 / GO-2026-4985
More information
Details
The OTLP HTTP exporters (traces, metrics, and logs) do not limit the size of the HTTP response body read from the collector. A malicious or misconfigured collector can send a large response body, leading to excessive memory consumption and potential process termination (OOM).
Severity
Unknown
References
This data is provided by OSV and the Go Vulnerability Database (CC-BY 4.0).
Release Notes
open-telemetry/opentelemetry-go (go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp)
v1.43.0: /v0.65.0/v0.19.0Compare Source
Added
IsRandomandWithRandomonTraceFlags, andIsRandomonSpanContextingo.opentelemetry.io/otel/tracefor W3C Trace Context Level 2 Random Trace ID Flag support. (#8012)
WithServiceingo.opentelemetry.io/otel/sdk/resource. (#7642)DefaultWithContextandEnvironmentWithContextingo.opentelemetry.io/otel/sdk/resourceto support plumbingcontext.Contextthrough default and environment detectors. (#8051)attribute.EMPTY) ingo.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#8038)attribute.EMPTY) ingo.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc. (#8038)attribute.EMPTY) ingo.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc. (#8038)attribute.EMPTY) ingo.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp. (#8038)attribute.EMPTY) ingo.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp. (#8038)attribute.EMPTY) ingo.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp. (#8038)attribute.EMPTY) ingo.opentelemetry.io/otel/sdk/metric/metricdata/metricdatatest. (#8038)go.opentelemetry.io/otel/sdk/metric.Set
OTEL_GO_X_PER_SERIES_START_TIMESTAMPS=trueto enable. (#8060)WithCardinalityLimitSelectorfor metric reader for configuring cardinality limits specific to the instrument kind. (#7855)Changed
EMPTYType ingo.opentelemetry.io/otel/attributeto reflect that an empty value is now a valid value, withINVALIDremaining as a deprecated alias ofEMPTY. (#8038)go.opentelemetry.io/otel/attributeto optimize short slice values with fixed-size fast paths. (#8039)go.opentelemetry.io/otel/sdk/traceby returning early if self-observability is not enabled. (#8067)go.opentelemetry.io/otel/sdk/metric/metricdata/metricdatatest. (#8073)Deprecated
INVALIDingo.opentelemetry.io/otel/attribute. UseEMPTYinstead. (#8038)Fixed
TraceIdRatioBaseddescription. This is a breaking behavioral change, but it is necessary tomake the implementation spec-compliant. (#8027)
go.opentelemetry.io/otel/sdk/metricwhere the lastvalue aggregation could collect the value 0 even when no zero-value measurements were recorded. (#8056)go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttpto mitigate excessive memory usage caused by a misconfigured or malicious server.Responses exceeding the limit are treated as non-retryable errors. (#8108)
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttpto mitigate excessive memory usage caused by a misconfigured or malicious server.Responses exceeding the limit are treated as non-retryable errors. (#8108)
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttpto mitigate excessive memory usage caused by a misconfigured or malicious server.Responses exceeding the limit are treated as non-retryable errors. (#8108)
WithHostIDdetector ingo.opentelemetry.io/otel/sdk/resourceto use full path forkenvcommand on BSD. (#8113)request.GetBodyingo.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttpto correctly handle HTTP2 GOAWAY frame. (#8096)What's Changed
190d7d4by @renovate[bot] in #8013a57be14by @renovate[bot] in #80318895462by @renovate[bot] in #80366e66a94by @renovate[bot] in #804384a4fc4by @renovate[bot] in #8048b7b2c7bby @renovate[bot] in #8044befce8dby @renovate[bot] in #8053c2dfcecby @renovate[bot] in #8055dec52c4by @renovate[bot] in #8063744bfb5by @renovate[bot] in #8064internal/observpackage to stdoutlog by @yumosx in #7735de6f1ccby @renovate[bot] in #8082d00831aby @renovate[bot] in #8078b6b0c46by @renovate[bot] in #8076d5a96adby @renovate[bot] in #81129d38bb4by @renovate[bot] in #8117c99c5cfby @renovate[bot] in #8122New Contributors
Full Changelog: open-telemetry/opentelemetry-go@v1.42.0...v1.43.0
v1.42.0: /v0.64.0/v0.18.0/v0.0.16Compare Source
Added
go.opentelemetry.io/otel/semconv/v1.40.0package.The package contains semantic conventions from the
v1.40.0version of the OpenTelemetry Semantic Conventions.See the migration documentation for information on how to upgrade from
go.opentelemetry.io/otel/semconv/v1.39.0. (#7985)ErrandSetErronRecordingo.opentelemetry.io/otel/logto attach an error and set record exception attributes ingo.opentelemetry.io/otel/log/sdk. (#7924)Changed
TracerProvider.ForceFlushingo.opentelemetry.io/otel/sdk/tracejoins errors together and continues iteration through SpanProcessors as opposed to returning the first encountered error without attempting exports on subsequent SpanProcessors. (#7856)Fixed
request.GetBodyingo.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttpto correctly handle HTTP2 GOAWAY frame. (#7931)go.opentelemetry.io/otel/propagation. (#7834)Removed
What's Changed
df47568by @renovate[bot] in #799618da590by @renovate[bot] in #8000e526e8aby @renovate[bot] in #8010New Contributors
Full Changelog: open-telemetry/opentelemetry-go@v1.41.0...v1.42.0
v1.41.0: /v0.63.0/v0.17.0/v0.0.15Compare Source
This release is the last to support Go 1.24. The next release will require at least Go 1.25.
Added
Fixed
Baggageingo.opentelemetry.io/otel/propagationandParseandNewingo.opentelemetry.io/otel/baggageto comply with W3C Baggage specification limits.NewandParsenow return partial baggage along with an error when limits are exceeded. Errors from baggage extraction are reported to the global error handler. (#7880)What's Changed
ce8ad4cby @renovate[bot] in #7860fe4bb1cby @renovate[bot] in #7861aaaaaa5by @renovate[bot] in #7869546029dby @renovate[bot] in #787186a5c4bby @renovate[bot] in #78762842357by @renovate[bot] in #78914cfbd41by @renovate[bot] in #7889oteltracegrpcby @itssaharsh in #78259f66faeby @renovate[bot] in #7898otlptracehttpbefore performing operation by @itssaharsh in #7881Configuration
📅 Schedule: (UTC)
🚦 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.
This PR has been generated by Mend Renovate.