{"id":"GHSA-w2jh-77fq-7gp8","revision":"b6fbcfb6d87b4d039510a7d9c2e02df7","records":[{"revision":"b6fbcfb6d87b4d039510a7d9c2e02df7","observedAt":"2026-10-23T16:01:25.029+00:00","statement":{"source":"osv","id":"GHSA-w2jh-77fq-7gp8","aliases":["CVE-2026-42348"],"title":"OpAMP client reads unbounded HTTP response bodies","description":"### Summary\n\nWhen receiving responses from the OpAMP server over HTTP, the OpAMP client allocates an unbounded buffer to read all bytes from the server, with no upper-bound on the number of bytes consumed.\n\nThis could cause memory exhaustion in the consuming application if the configured OpAMP server is attacker-controlled (or a network attacker can MitM the connection) and an extremely large body is returned in the response. \n\n### Details\n\n[#2926](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/2926) introduced the initial HTTP transport components which uses `ReadAsByteArrayAsync` to copy the `HttpResponseMessage.Content` into a byte array. This code path allows an unbounded read of the entire HTTP response message.\n\n### Impact\n\nIf an application using the OpAMP client is configured to use an OpAMP server that is attacker-controlled (or a network attacker can MitM the connection) and an extremely large body is returned in the response, the application could have its memory exhausted and create a denial-of-service condition.\n\n### Mitigation\n\nThe application's configured OpAMP server needs to behave maliciously. If the OpAMP server is a well-behaved implementation, response bodies should not be excessively large.\n\n### Workarounds\n\nNone known.\n\n### Remediation\n\n[#4116](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/4116) updates the OpAMP client HTTP transport to limit the maximum size of responses to 128KB.\n\n### Resources\n\n- [#2926](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/2926)\n- [#4116](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/4116)\n- [CWE-789](https://cwe.mitre.org/data/definitions/789.html)","state":0,"publishedAt":"2026-05-05T21:57:54+00:00","modifiedAt":"2026-05-13T16:46:20.709201+00:00","affected":[{"ecosystem":"NuGet","name":"OpenTelemetry.OpAmp.Client","ranges":[{"type":"ECOSYSTEM","events":[{"kind":"introduced","version":"0"},{"kind":"fixed","version":"0.2.0-alpha.1"}]}],"versions":[],"rawVersionEvidence":null}],"metrics":[{"system":"CVSS_V3","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","score":null,"severity":null},{"system":"Publisher rating","vector":null,"score":null,"severity":"MODERATE"}],"references":["https://github.com/open-telemetry/opentelemetry-dotnet-contrib/security/advisories/GHSA-w2jh-77fq-7gp8","https://nvd.nist.gov/vuln/detail/CVE-2026-42348","https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/4116","https://github.com/open-telemetry/opentelemetry-dotnet-contrib/commit/bf1fad4fa298ff451cda0efb0ee9c7a7eb46212a","https://github.com/open-telemetry/opentelemetry-dotnet-contrib"],"sourceUrl":"https://github.com/advisories/GHSA-w2jh-77fq-7gp8","license":"GitHub Advisory Database · CC-BY-4.0","key":"osv:GHSA-w2jh-77fq-7gp8","identifiers":["GHSA-w2jh-77fq-7gp8","CVE-2026-42348"]},"retained":false,"historicalAffected":[]}],"coverage":[]}