dd-trace-java: Unsafe deserialization in RMI instrumentation may lead to remote code execution
Critical severity
GitHub Reviewed
Published
Mar 23, 2026
in
DataDog/dd-trace-java
•
Updated Mar 27, 2026
Package
Affected versions
>= 0.40.0, < 1.60.3
Patched versions
1.60.3
Description
Published to the GitHub Advisory Database
Mar 26, 2026
Reviewed
Mar 26, 2026
Published by the National Vulnerability Database
Mar 27, 2026
Last updated
Mar 27, 2026
In versions of dd-trace-java prior to 1.60.3, the RMI instrumentation registered a custom endpoint that deserialized incoming data without applying serialization filters. On JDK version 16 and earlier, an attacker with network access to a JMX or RMI port on an instrumented JVM could exploit this to potentially achieve remote code execution. All three of the following conditions must be true to exploit this vulnerability:
-javaagent) on Java 16 or earlier-Dcom.sun.management.jmxremote.portand is network-reachableImpact
Arbitrary remote code execution with the privileges of the user running the instrumented JVM.
Recommendation
Workarounds
Set the following environment variable to disable the RMI integration:
DD_INTEGRATION_RMI_ENABLED=falseCredits
This vulnerability was responsibly disclosed by Mohamed Amine ait Ouchebou (mrecho) (Indiesecurity) via the Datadog bug bounty program.
References