Skip to main content

OpenTelemetry.Sampler.AWS CVE-2026-41173

| EUVDEUVD-2026-25271 MEDIUM
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-04-23 GitHub_M GHSA-28xm-prxc-5866
5.9
CVSS 3.1 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI
5.9 MEDIUM

Network vector applies since the endpoint can be remote; AC:H reflects mandatory MitM or endpoint-control prerequisite; availability is the sole impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from GitHub Advisory.

CVSS VectorGitHub Advisory

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

6
Source Code Evidence Fetched
Jul 24, 2026 - 04:36 vuln.today
Analysis Generated
Jul 24, 2026 - 04:36 vuln.today
Patch released
Apr 24, 2026 - 14:50 nvd
Patch available
Patch available
Apr 23, 2026 - 20:31 EUVD
EUVD ID Assigned
Apr 23, 2026 - 19:00 euvd
EUVD-2026-25271
CVE Published
Apr 23, 2026 - 18:22 nvd
MEDIUM 5.9

DescriptionGitHub Advisory

The AWS X-Ray Remote Sampler package provides a sampler which can get sampling configurations from AWS X-Ray. Prior to 0.1.0-alpha.8, OpenTelemetry.Sampler.AWS reads unbounded HTTP response bodies from a configured AWS X-Ray remote sampling endpoint into memory. AWSXRaySamplerClient.DoRequestAsync called HttpClient.SendAsync followed by ReadAsStringAsync(), which materializes the entire HTTP response body into a single in-memory string with no size limit. The sampling endpoint is configurable via AWSXRayRemoteSamplerBuilder.SetEndpoint (default: http://localhost:2000). An attacker who controls the configured endpoint, or who can intercept traffic to it (MitM), can return an arbitrarily large response body. This causes unbounded heap allocation in the consuming process, leading to high transient memory pressure, garbage-collection stalls, or an OutOfMemoryException that terminates the process. This vulnerability is fixed in 0.1.0-alpha.8.

AnalysisAI

Unbounded HTTP response body allocation in OpenTelemetry.Sampler.AWS allows an attacker who controls the configured X-Ray sampling endpoint or who holds a network MitM position to exhaust heap memory and crash the consuming .NET process via OutOfMemoryException. Both NuGet packages OpenTelemetry.Sampler.AWS (versions below 0.1.0-alpha.8) and OpenTelemetry.Resources.AWS (versions below 1.15.1) are affected, with AWSXRaySamplerClient.DoRequestAsync calling ReadAsStringAsync() with no response size cap. No public exploit has been identified and EPSS sits at 0.01% (2nd percentile), consistent with SSVC exploitation status of none and CISA KEV absence, making this a low-urgency but patchable DoS risk.

Technical ContextAI

The vulnerability is rooted in CWE-770 (Allocation of Resources Without Limits or Throttling). The affected code path in AWSXRaySamplerClient.DoRequestAsync uses HttpClient.SendAsync followed by ReadAsStringAsync(), which buffers the entire HTTP response body into a single heap-allocated string with no size guard. The sampling endpoint is configurable via AWSXRayRemoteSamplerBuilder.SetEndpoint and defaults to the unencrypted plaintext address http://localhost:2000 - an X-Ray daemon listening port. In the OpenTelemetry.Resources.AWS package, the same pattern affects AWSEC2Detector, AWSECSDetector, and AWSEKSDetector, which query AWS instance metadata service endpoints (http://169.254.169.254, ECS_CONTAINER_METADATA_URI, https://kubernetes.default.svc). The affected CPE is cpe:2.3:a:open-telemetry:opentelemetry-dotnet-contrib:*:*:*:*:*:*:*:*. The fix, confirmed in PR #4100, introduces a LimitedStream wrapper class that enforces a 1 MB read cap per request by clamping reads against a totalBytesRead counter, and switches to HttpCompletionOption.ResponseHeadersRead to stream rather than buffer the response.

RemediationAI

Upgrade OpenTelemetry.Sampler.AWS to version 0.1.0-alpha.8 or later and OpenTelemetry.Resources.AWS to version 1.15.1 or later; both fix versions are confirmed by GHSA-28xm-prxc-5866 and the merged PR diffs at https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/4100 and https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/4122. If an immediate upgrade is not possible, configure the sampling endpoint to use HTTPS with a trusted certificate to eliminate plaintext MitM risk; note this does not protect against a compromised or attacker-controlled endpoint. Additionally, restrict network access to the X-Ray daemon port (default 2000) via host firewall rules so only the local process may reach it, reducing the MitM surface. In containerized environments, enforce network policy to isolate metadata service access. These workarounds reduce but do not eliminate risk - patching is the only complete remediation.

Share

CVE-2026-41173 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy