Read the docs

Datadog dd-trace-py IAST flaw lets attackers crash Python processes

Priority MEDIUM 42CWE-248Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
Present
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-248.

Summary

Datadog dd-trace-py from 3.13.0 before 4.15.5 is affected, including the ddtrace package on PyPI. The IAST string-processing instrumentation does not handle certain internal errors during old-style % string formatting, which is an uncaught exception (CWE-248). A remote, unauthenticated attacker can terminate the Python process when IAST is enabled and the application applies that formatting to attacker-controlled input. IAST is not enabled by default.

Written with Claude Haiku 5.5 from the sources below · 2026-10-31

Description from the CNA

Datadog dd-trace-py is the Datadog Python APM client. From 3.13.0 until 4.15.5, the IAST string-processing instrumentation does not properly handle certain internal errors while old-style % string formatting processes attacker-controlled input. An unhandled error can terminate the Python process and interrupt the work it is handling. Exploitation requires IAST to be enabled, which is not the default, and application code to apply the affected formatting operation to attacker-controlled input. This issue is fixed in version 4.15.5.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00328 26th percentileScored 2026-11-07
Fix Fixed dd-trace-py (DataDog): 4.15.5ddtrace (PyPI): 4.15.5

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
DataDogdd-trace-py3.13.0 to before 4.15.54.15.5Patch availableCNA
—ddtrace (PyPI)3.13.0 to before 4.15.54.15.5Patch availableGHSA-p3m5-h5v9-vqj6
  • dd-trace-py VendorDataDog Affected 3.13.0 to before 4.15.5 Fixed in 4.15.5 Patch available CNA
  • ddtrace (PyPI) Vendor— Affected 3.13.0 to before 4.15.5 Fixed in 4.15.5 Patch available GHSA-p3m5-h5v9-vqj6

Remediation

The fixed version is 4.15.5 for dd-trace-py and the ddtrace package on PyPI. Upgrade to version 4.15.5 or later.

Written with Claude Haiku 5.5 from the sources below · 2026-10-31

  • Fix · CNA dd-trace-py (DataDog) Fixed in 4.15.5
  • Fix · GHSA-p3m5-h5v9-vqj6 ddtrace (PyPI) Fixed in 4.15.5 Advisory →

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-10-26 Threatist record created from CVE-2026-116589
  2. 2026-10-27 Affected versions changed · Red Hat
  3. 2026-10-27 CVSS score added · Red Hat
  4. 2026-10-27 Alias added: GHSA-p3m5-h5v9-vqj6
  5. 2026-10-27 Priority changed: MEDIUM → LOW
  6. 2026-10-31 CISA SSVC decision points changed
  7. 2026-10-31 Priority changed: LOW → MEDIUM

References

  • TI-2026-32833 GuardDog: Blind GitHub URL rewrite in remote project scanning causes SSRF and `GH_TOKEN` exfiltration CVSS 3.1HIGH 8.2
  • TI-2022-07587 GuardDog vulnerable to arbitrary file write when scanning a specially-crafted remote PyPI package CVSS 3.1MEDIUM 6.5
  • TI-2026-26107 dd-trace-java: Unsafe deserialization in RMI instrumentation may lead to remote code execution CVSS 4.0CRITICAL 9.3
  • TI-2026-81528 ReDoS in dd-trace URL query string obfuscation CVSS 4.0HIGH 8.7
  • TI-2026-80927 ReDoS in Datadog dd-trace-py URL query string obfuscation CVSS 4.0HIGH 8.7
  • TI-2023-20052 import-in-the-middle allows unsanitized user controlled input in module generation CVSS 3.1CRITICAL 9.8
See all 28 →

Sources