<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>@Opentelemetry/Sdk-Node — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/@opentelemetry/sdk-node/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Mon, 11 May 2026 14:43:32 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/@opentelemetry/sdk-node/feed.xml" rel="self" type="application/rss+xml"/><item><title>OpenTelemetry Prometheus Exporter Denial-of-Service via Malformed HTTP Request (CVE-2026-44902)</title><link>https://feed.craftedsignal.io/briefs/2026-05-opentelemetry-prometheus-dos/</link><pubDate>Mon, 11 May 2026 14:43:32 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-05-opentelemetry-prometheus-dos/</guid><description>A malformed HTTP request can crash any Node.js process running the OpenTelemetry JS Prometheus exporter. The metrics endpoint has no error handling around URL parsing, so a request with an invalid URI causes an uncaught `TypeError` that terminates the process, leading to a denial of service. Update `@opentelemetry/exporter-prometheus` and `@opentelemetry/sdk-node` to version **0.217.0** or later and `@opentelemetry/auto-instrumentations-node` to version **0.75.0** or later to remediate.</description><content:encoded><![CDATA[<p>The OpenTelemetry Prometheus exporter is vulnerable to a denial-of-service attack. A single malformed HTTP request sent to the metrics endpoint (default <code>0.0.0.0:9464</code>) can crash any Node.js process running the exporter. The vulnerability lies in the lack of error handling when parsing the URL from the HTTP request. Specifically, the <code>new URL()</code> constructor within the <code>_requestHandler</code> in <code>PrometheusExporter.ts</code> throws a <code>TypeError</code> when provided with an invalid URI (e.g., <code>http://</code>). Because this exception is uncaught, it propagates and terminates the process. The affected packages are <code>@opentelemetry/exporter-prometheus</code>, <code>@opentelemetry/sdk-node</code>, and <code>@opentelemetry/auto-instrumentations-node</code>. This vulnerability exists in versions prior to <code>@opentelemetry/exporter-prometheus</code> and <code>@opentelemetry/sdk-node</code> version 0.217.0, and <code>@opentelemetry/auto-instrumentations-node</code> version 0.75.0.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker identifies a Node.js application using the OpenTelemetry Prometheus exporter.</li>
<li>The attacker crafts a malformed HTTP request containing an invalid URI (e.g., <code>GET http:// HTTP/1.1</code>).</li>
<li>The attacker sends the malformed request to the application&rsquo;s metrics endpoint (default port 9464).</li>
<li>The <code>PrometheusExporter._requestHandler</code> receives the request and attempts to parse the URL using <code>new URL(request.url, this._baseUrl)</code>.</li>
<li>The <code>URL</code> constructor throws a <code>TypeError: Invalid URL</code> due to the malformed URI.</li>
<li>The exception is not caught within the <code>_requestHandler</code>, causing it to propagate.</li>
<li>The uncaught exception terminates the Node.js process.</li>
<li>The application becomes unavailable, resulting in a denial-of-service.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation leads to a denial-of-service condition. Any application utilizing the OpenTelemetry Prometheus exporter&rsquo;s built-in server can be crashed by an unauthenticated network packet sent to the metrics port. The vulnerability requires no prior access or privileges and can be triggered remotely, potentially affecting all instances of the application exposing the Prometheus endpoint.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade <code>@opentelemetry/exporter-prometheus</code> and <code>@opentelemetry/sdk-node</code> to version 0.217.0 or later to resolve CVE-2026-44902.</li>
<li>Upgrade <code>@opentelemetry/auto-instrumentations-node</code> to version 0.75.0 or later to resolve CVE-2026-44902.</li>
<li>Apply network policies to restrict access to port 9464 (or the configured metrics port) to only trusted Prometheus scrape hosts, as an interim mitigation.</li>
<li>Deploy the Sigma rule <code>Detect OpenTelemetry Prometheus Exporter Malformed HTTP Request</code> to detect exploitation attempts.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>denial-of-service</category><category>otel</category><category>prometheus</category><category>CVE-2026-44902</category></item></channel></rss>