Skip to content

fix(security/medium): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security]#1968

Closed
renovate-sh-app[bot] wants to merge 1 commit into
mainfrom
renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability
Closed

fix(security/medium): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security]#1968
renovate-sh-app[bot] wants to merge 1 commit into
mainfrom
renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability

Conversation

@renovate-sh-app

@renovate-sh-app renovate-sh-app Bot commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.16.0v0.19.0 age confidence
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.17.0v0.19.0 age confidence

opentelemetry-go: OTLP HTTP exporters read unbounded HTTP response bodies

CVE-2026-39882 / GHSA-w8rr-5gcm-pp58

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.Buffer without 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):

  • exporters/otlp/otlptrace/otlptracehttp/client.go:199
  • exporters/otlp/otlptrace/otlptracehttp/client.go:230
  • exporters/otlp/otlpmetric/otlpmetrichttp/client.go:170
  • exporters/otlp/otlpmetric/otlpmetrichttp/client.go:201
  • exporters/otlp/otlplog/otlploghttp/client.go:190
  • exporters/otlp/otlplog/otlploghttp/client.go:221

permalinks (pinned):

root cause:
each exporter client reads resp.Body using io.Copy(&respData, resp.Body) into a bytes.Buffer on 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:

  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
  • go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
  • go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp

repro (local-only):

unzip poc.zip -d poc
cd poc
make canonical resp_bytes=33554432 chunk_delay_ms=0

expected output contains:

[CALLSITE_HIT]: otlptracehttp.UploadTraces::io.Copy(resp.Body)
[PROOF_MARKER]: resp_bytes=33554432 peak_alloc_bytes=118050512

control (same env, patched target):

unzip poc.zip -d poc
cd poc
make control resp_bytes=33554432 chunk_delay_ms=0

expected control output contains:

[CALLSITE_HIT]: otlptracehttp.UploadTraces::io.Copy(resp.Body)
[NC_MARKER]: resp_bytes=33554432 peak_alloc_bytes=512232

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 Score: 5.3 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H

References

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


Release Notes

open-telemetry/opentelemetry-go (go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp)

v0.19.0

Compare Source

v0.18.0

Compare Source

v0.17.0

Compare Source


Configuration

📅 Schedule: (UTC)

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

🚦 Automerge: Enabled.

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

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


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

Need help?

You can ask for more help in the following Slack channel: #proj-renovate-self-hosted. In that channel you can also find ADR and FAQ docs in the Resources section.

@renovate-sh-app

renovate-sh-app Bot commented Apr 8, 2026

Copy link
Copy Markdown
Contributor Author

ℹ️ Artifact update notice

File name: dagger/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):

  • 2 additional dependencies were updated

Details:

Package Change
go.opentelemetry.io/otel/log v0.17.0 -> v0.19.0
go.opentelemetry.io/otel/sdk/log v0.17.0 -> v0.19.0

@dsotirakis dsotirakis changed the title fix(deps): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] fix(deps): update go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] Apr 9, 2026
@cla-assistant

cla-assistant Bot commented Apr 9, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@renovate-sh-app

Copy link
Copy Markdown
Contributor Author

Rebase requested. Renovate is processing this repository now.

1 similar comment
@renovate-sh-app

Copy link
Copy Markdown
Contributor Author

Rebase requested. Renovate is processing this repository now.

@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch from 7136ab8 to 32f77e5 Compare April 9, 2026 15:35
@renovate-sh-app renovate-sh-app Bot changed the title fix(deps): update go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] fix(deps): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] Apr 9, 2026
@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 8 times, most recently from e7ca53c to 2988b76 Compare April 16, 2026 08:04
@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 8 times, most recently from eb794c6 to 5ffbe65 Compare April 22, 2026 14:02
@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 7 times, most recently from 908e123 to 23b80de Compare April 28, 2026 08:02
@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 2 times, most recently from 24907ef to b2569f9 Compare May 4, 2026 08:02
@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 4 times, most recently from cd90194 to 920938b Compare May 13, 2026 11:03
@NickAnge

Copy link
Copy Markdown
Contributor

@NickAnge NickAnge marked this pull request as draft May 13, 2026 13:48
auto-merge was automatically disabled May 13, 2026 13:48

Pull request was converted to draft

@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 2 times, most recently from 9194602 to 2b1f4ff Compare May 13, 2026 17:04
@renovate-sh-app renovate-sh-app Bot changed the title fix(deps): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] fix(deps): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] - autoclosed May 14, 2026
@renovate-sh-app renovate-sh-app Bot closed this May 14, 2026
@renovate-sh-app renovate-sh-app Bot deleted the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch May 14, 2026 08:03
…s/otlp/otlplog/otlploghttp to v0.19.0 [security]

| datasource | package                                                     | from    | to      |
| ---------- | ----------------------------------------------------------- | ------- | ------- |
| go         | go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp | v0.16.0 | v0.19.0 |
| go         | go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp | v0.17.0 | v0.19.0 |


Signed-off-by: renovate-sh-app[bot] <219655108+renovate-sh-app[bot]@users.noreply.github.com>
@renovate-sh-app renovate-sh-app Bot changed the title fix(deps): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] - autoclosed fix(security/medium): update module go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp to v0.19.0 [security] May 15, 2026
@renovate-sh-app renovate-sh-app Bot reopened this May 15, 2026
@renovate-sh-app renovate-sh-app Bot force-pushed the renovate/go-go.opentelemetry.io-otel-exporters-otlp-otlplog-otlploghttp-vulnerability branch 2 times, most recently from 2b1f4ff to d6c39e1 Compare May 15, 2026 17:02
@phlope phlope closed this May 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants