Fix CVE-2026-39882: Update OTLP trace exporters to v1.43.0#461
Open
Fix CVE-2026-39882: Update OTLP trace exporters to v1.43.0#461
Conversation
Agent-Logs-Url: https://github.com/solarwinds/apm-java/sessions/716528be-1231-46bd-99d2-40a0116b9df2 Co-authored-by: cleverchuk <15526124+cleverchuk@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Fix vulnerability in OpenTelemetry HTTP exporters
Fix CVE-2026-39882: Update OTLP trace exporters to v1.43.0
Apr 9, 2026
cleverchuk
approved these changes
Apr 10, 2026
cleverchuk
approved these changes
Apr 10, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
Updates the Go module dependencies for the long-running-test-arch/xk6 (k6 OTEL output) component to remediate CVE-2026-39882 / GHSA-w8rr-5gcm-pp58 by bumping vulnerable OTLP trace exporter packages to the patched OpenTelemetry Go release.
Changes:
- Bumped
go.opentelemetry.io/otel/exporters/otlp/otlptrace*dependencies fromv1.38.0tov1.43.0ingo.mod(indirect). - Updated
go.sumto reflect the new module versions and checksums.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| long-running-test-arch/xk6/go.mod | Updates indirect OTLP trace exporter versions to v1.43.0 to clear the CVE. |
| long-running-test-arch/xk6/go.sum | Refreshes checksums for the updated OTLP trace exporter modules. |
cheempz
approved these changes
Apr 10, 2026
Contributor
cheempz
left a comment
There was a problem hiding this comment.
LGTM if the failing release tests are not a concern.
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.
Tl;dr: Bump vulnerable OTLP trace exporter transitive deps in
long-running-test-arch/xk6to fix unbounded HTTP response body read (memory exhaustion) vulnerability.Context:
GHSA-w8rr-5gcm-pp58 / CVE-2026-39882:
otlptrace*HTTP exporters readresp.Bodyviaio.Copywith no size cap, allowing an attacker-controlled or MitM'd collector to OOM the process. Fixed in upstream v1.43.0.Updated in
long-running-test-arch/xk6/go.mod:go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.38.0 → v1.43.0go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.38.0 → v1.43.0go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp: v1.38.0 → v1.43.0Reachability: Low active risk.
k6_otel.goonly usesotlpmetricgrpc(gRPC, not HTTP). The three patched packages are indirect deps pulled in viago.k6.io/k6and are never directly invoked. Update is primarily to clear the vulnerability scanner.Test Plan:
Dependency-only change with no logic modifications; verified
go mod tidyresolves cleanly and advisory DB reports no vulnerabilities at v1.43.0.Test services data
Original prompt
This section details the Dependabot vulnerability alert you should resolve
<alert_title>opentelemetry-go: OTLP HTTP exporters read unbounded HTTP response bodies</alert_title>
<alert_description>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: open-telemetry/opentelemetry-go#8108</alert_description>
moderate
https://github.com/open-telemetry/opentelemetry-go/security/advisories/GHSA-w8rr-5gcm-pp58 https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.43.0 https://nvd.nist.gov/vuln/detail/CVE-2026-39882 https://github.com/open-telemetry/opentelemetry-go/pull/8108 https://github.com/advisories/GHSA-w8rr-5gcm-pp58GHSA-w8rr-5gcm-pp58, CVE-2026-39882
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
go
<vulnerable_versions>= v1.38.0</vulnerable_versions>
<patched_version>1.43.0</patched_version>
<manifest_path>long-running-test-arch/xk6/go.mod</manifest_path>
<task_instructions>Resolve this alert by updating the affected package to a non-vulnerable version. Prefer the lowest non-vulnerable version (see the patched_version field above) over the latest to minimize breaking changes. Include a Reachability Assessment section in the PR description. Review the alert_description field to understand which APIs, features, or configurations are affected, then search the codebase for usage of those specific items. If the vulnerable code path is reachable, explain how (which files, APIs, or call sites use the affected functionality) and note that the codebase is a...