Skip to main content

Datadog PHP Tracer EUVDEUVD-2026-82416

| CVE-2026-50275 HIGH
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-09-17 GitHub_M
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify app running dd-trace-php < 1.19.2
  2. Delivery
    Craft oversized W3C baggage header
  3. Exploit
    Send to any traced endpoint
  4. Execution
    Unbounded hash-map allocation in parser
  5. Persist
    CPU/memory exhaustion
  6. Impact
    Worker/host denial of service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires that baggage propagation extraction be active, which the advisory states is enabled by DEFAULT in most affected deployments unless baggage is removed from DD_TRACE_PROPAGATION_STYLE or DD_TRACE_PROPAGATION_STYLE_EXTRACT. Exploitation is remote and pre-authentication (PR:N): the attacker only needs to reach an HTTP endpoint of an application instrumented with dd-trace-php < 1.19.2 and supply a malicious W3C baggage header; the missing DD_TRACE_BAGGAGE_MAX_ITEMS/DD_TRACE_BAGGAGE_MAX_BYTES enforcement means no special payload encoding is needed. The main limiting factor is configuration: deployments that have disabled baggage extraction in their propagation style are not exposed; impact is confined to availability (worker/host resource exhaustion), with no confidentiality or integrity effect.

Impact

This is a legitimately exploitable but availability-only issue. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, base 7.5) is internally consistent with the description: a remote unauthenticated client sends a crafted W3C baggage header and the tracer allocates unbounded hash-map entries, exhausting CPU and memory per request. No EPSS score, no CISA KEV listing, and no public exploit were provided, so exploitation status is 'no public exploit identified at time of analysis' - but the linked PR #3854, two fix commits, and the GHSA advisory disclose the exact bug and its remediation, making a working DoS trivially reconstructible from the diff. The 7.5 score reflects only availability impact (C:N/I:N), so this is a real but bounded priority: worth patching because it is remote, pre-auth, and default-enabled, yet it cannot lead to data disclosure, code execution, or lateral movement. It is a straightforward resource-exhaustion DoS, not a high-CVSS-but-illusory issue, though the ceiling of impact is a crashed/degraded PHP worker rather than compromise.

Exploit ScenarioDerived

An attacker sends HTTP requests to any application instrumented with dd-trace-php < 1.19.2, each carrying a W3C baggage header packed with a huge number of comma-separated key-value pairs or one oversized value. Because ddtrace_deserialize_baggage ignores DD_TRACE_BAGGAGE_MAX_ITEMS and DD_TRACE_BAGGAGE_MAX_BYTES, every request drives unbounded hash-map allocation and CPU consumption, and a modest flood exhausts memory/CPU and takes the PHP worker or host offline. No public weaponized exploit is listed, but the fix PR and commits fully reveal the vulnerable parser.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.5% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 17, 2026

Unbounded CPU and memory consumption in the Datadog PHP Tracer (dd-trace-php) before 1.19.2 allows remote, unauthenticated attackers to exhaust resources on any instrumented PHP worker that parses W3C baggage headers. The tracer's baggage deserializer fails to enforce DD_TRACE_BAGGAGE_MAX_ITEMS and DD_TRACE_BAGGAGE_MAX_BYTES, so a request carrying an arbitrarily long list of comma-separated key-value pairs, or a single oversized value, forces unbounded hash-map allocation and parsing work on every request; because baggage extraction is enabled by default in most deployments, exposure is broad and pre-authentication, though the impact is limited to availability with no confidentiality or integrity effect. No public exploit code has been identified at time of analysis, and the vendor has released a fix in 1.19.2 (with 1.20.0 also containing the change).

RemediationAI

Vendor-released patch: 1.19.2 - upgrade dd-trace-php to 1.19.2 or later (the 1.20.0 release also carries the change) per the GitHub Security Advisory GHSA-phwx-ww2p-cv9v and the upgrade steps at https://github.com/DataDog/dd-trace-php/releases/tag/1.19.2; the underlying fix is in PR #3854 (commits 2f7987eb02e306bb62bce8ec4152dece68112f51 and 43072ccafe55a5dbdfba75a42bf316b4150ae1e5). If an immediate upgrade is not possible, disable baggage extraction by removing baggage from DD_TRACE_PROPAGATION_STYLE and DD_TRACE_PROPAGATION_STYLE_EXTRACT (or setting the propagation style to tracecontext/datadog only) - the trade-off is that W3C baggage will no longer propagate to or from instrumented services, which can break downstream features that rely on baggage-carried context, and this must be applied consistently across the deployment to avoid inconsistent trace metadata. Until patched, front-end proxies or WAFs can also be configured to cap the length of the baggage request header (for example rejecting headers above a few kilobytes or more than a small number of comma-separated entries), which limits the resource blow-up at the network edge at the cost of potentially rejecting legitimate large baggage payloads and requiring per-route tuning; upstream telemetry counters added by the patch (context_header.truncated) are only available after upgrading, so pre-patch monitoring should rely on per-worker CPU/memory and request-duration anomalies.

Affected VersionsENISA

dd-trace-php < 1.19.2

Affected Packages

euvd dd_trace_php fix: 1.19.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerable component is the Datadog dd-trace-php extension, a C-language Zend extension (zend_extension) that instruments PHP applications for APM and distributed tracing and runs inside the PHP worker process. Per request, ddtrace_read_distributed_tracing_ids in ext/distributed_tracing_headers.c invokes ddtrace_deserialize_baggage, which parses the incoming W3C baggage HTTP header into a hash map of key-value pairs. The defect is CWE-770 (Allocation of Resources Without Limits or Throttling): the parser reads attacker-controlled comma-separated pairs and values without ever comparing the accumulated item count against DD_TRACE_BAGGAGE_MAX_ITEMS or the accumulated byte count against DD_TRACE_BAGGAGE_MAX_BYTES, so both hash entries and CPU work grow linearly with header size. The upstream fix (PR #3854, commits 2f7987eb and 43072cca) adds item_count and total_bytes accumulators, breaks out of parsing when either configured maximum is exceeded, records the truncation via new module globals (baggage_extract_max_item_count, baggage_extract_max_byte_count) and telemetry points (context_header.truncated), and additionally bounds related propagation paths (tracestate unknown _dd.* keys capped at 100 entries and propagated tag size capped at 512 bytes), indicating the maintainers treated unconstrained header-driven data structures as a broader class of problem. The affected product range is captured by CPE cpe:2.3:a:datadog:dd-trace-php:*:*:*:*:*:*:*:* and ENISA EUVD-2026-82416 lists 'dd-trace-php < 1.19.2'.

Know when Datadog gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Remote unauthenticated HTTP header triggers the flaw with baggage extraction on by default, so AV:N/AC:L/PR:N/UI:N; impact is pure resource-exhaustion DoS, hence C:N/I:N/A:H.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

2
Patch available
Sep 17, 2026 - 21:19 EUVD
CVE Published
Sep 17, 2026 - 20:04 cve.org
HIGH 7.5

DescriptionCVE.org

The Datadog PHP Tracer provides application performance monitoring and distributed tracing for PHP. Prior to 1.19.2, ddtrace_deserialize_baggage in ext/distributed_tracing_headers.c parses incoming W3C baggage HTTP headers without enforcing DD_TRACE_BAGGAGE_MAX_ITEMS or DD_TRACE_BAGGAGE_MAX_BYTES. A remote unauthenticated client can send an arbitrarily large number of comma-separated key-value pairs or a single oversized value, causing the tracer to allocate hash-map entries and consume unbounded CPU and memory on each request. Baggage extraction is enabled by default in most affected deployments unless baggage is removed from DD_TRACE_PROPAGATION_STYLE or DD_TRACE_PROPAGATION_STYLE_EXTRACT. This issue is fixed in version 1.19.2.

Technical POC Analysis

Source: GHSA-phwx-ww2p-cv9v.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Datadog's PHP tracing library (dd-trace-php) before version 1.19.2 can be driven into unbounded CPU and memory consumption by ordinary HTTP requests carrying oversized or extremely long tracing baggage headers, which can exhaust or crash the PHP workers that run instrumented applications. Because baggage parsing is enabled by default in most deployments, exposure extends across essentially every internet-facing PHP service running the affected library, making this a service-availability and continuity issue rather than one involving data exposure. Leadership should care because a single malformed request stream can cause customer-facing outages and capacity-driven cost increases, and remediation requires coordinated library upgrades across all instrumented applications.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.5%
Top 59% exploitable
Prevalence
Medium
Datadog is widely used, but the PHP tracer is a language-specific APM subset
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.5%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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