# CVE-2026-116589: Datadog dd-trace-py process abort in IAST string formatting

Source: https://junglewise.ai/threats/cve-2026-116589-datadog-dd-trace-py-is-the-datadog-python-apm-client-from-3-13-0  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-26. Updated: 2026-10-26  
License: CC BY 4.0 with a link back

CVE-2026-116589 · Severity: high · CVSS 4 · Published 2026-10-26

Datadog's dd-trace-py is a Python application performance monitoring client. When IAST security instrumentation is enabled (a security scanning feature), a flaw in string formatting handling can crash the Python process if the application processes attacker-supplied input containing certain rare Unicode characters. This interrupts service availability but requires IAST to be explicitly enabled and specific application code patterns.

Technologies: [Datadog Dd-Trace-Py](https://junglewise.ai/threats/technologies/dd-trace-py), [ddtrace (PyPI)](https://junglewise.ai/threats/technologies/ddtrace). Vendors: [Datadog](https://junglewise.ai/threats/vendors/datadog), [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2026-116589 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-116589 being exploited in the wild.

**How severe is CVE-2026-116589?** High severity, with a CVSS score of 4, published 26 October 2026.

**Which products and versions are affected?** Datadog Dd-Trace-Py 3.13.0 to 4.15.4; ddtrace (PyPI) >= 3.13.0, < 4.15.5, ECOSYSTEM:introduced=3.13.0,fixed=4.15.5.

**Is there a fix for CVE-2026-116589?** Yes. ddtrace (PyPI): upgrade to 4.15.5 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-116589 attacked?** It is attacked over the network.

**Am I affected by CVE-2026-116589?** Check whether you run Datadog Dd-Trace-Py or ddtrace (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- ddtrace (PyPI): upgrade to 4.15.5 or later

  ```sh
  pip install "ddtrace>=4.15.5"
  ```


## Technical details

The IAST string-processing instrumentation in dd-trace-py does not properly handle unencoded Unicode surrogates (U+D800–U+DFFF) when converting parameters during old-style % string formatting operations. An uncaught C++ exception escapes across the Python/C++ boundary when tainted input containing lone surrogates is processed, causing std::terminate() to be called and the entire Python process to abort. Exploitation requires IAST to be enabled (non-default) and application code performing % formatting on attacker-controlled strings containing UTF-16 surrogates.

## Affected products

- Datadog dd-trace-py 3.13.0 to 4.15.4

## Identifiers

- CVE-2026-116589
- GHSA-p3m5-h5v9-vqj6

## Timeline

- 2026-10-26: disclosed

## References

- [https://github.com/DataDog/dd-trace-py/commit/69dc19853247434ceab83e0c1c4e279a2eb2a3f7](https://github.com/DataDog/dd-trace-py/commit/69dc19853247434ceab83e0c1c4e279a2eb2a3f7)
- [https://github.com/DataDog/dd-trace-py/commit/ace972489b57dd020ff52b706bb548a354f2dd69](https://github.com/DataDog/dd-trace-py/commit/ace972489b57dd020ff52b706bb548a354f2dd69)

## Related threats

- [Datadog dd-trace-py regex DoS in query-string obfuscation](https://junglewise.ai/threats/cve-2026-116588-datadog-dd-trace-py-is-the-datadog-python-apm-client-from-1-5-0)
- [Datadog dd-trace-py Denial of Service in W3C baggage parsing](https://junglewise.ai/threats/cve-2026-50271-datadog-dd-trace-py-denial-of-service-in-w3c-baggage-parsing)
