Apache Storm: Deserialization of Untrusted Data vulnerability
High severity
GitHub Reviewed
Published
Apr 13, 2026
to the GitHub Advisory Database
•
Updated Apr 14, 2026
Description
Published by the National Vulnerability Database
Apr 13, 2026
Published to the GitHub Advisory Database
Apr 13, 2026
Reviewed
Apr 14, 2026
Last updated
Apr 14, 2026
Deserialization of Untrusted Data vulnerability in Apache Storm.
Versions Affected:
before 2.8.6.
Description:
When processing topology credentials submitted via the Nimbus Thrift API, Storm deserializes the base64-encoded TGT blob using ObjectInputStream.readObject() without any class filtering or validation. An authenticated user with topology submission rights could supply a crafted serialized object in the "TGT" credential field, leading to remote code execution in both the Nimbus and Worker JVMs.
Mitigation:
2.x users should upgrade to 2.8.6.
Users who cannot upgrade immediately should monkey-patch an ObjectInputFilter allow-list to ClientAuthUtils.deserializeKerberosTicket() restricting deserialized classes to javax.security.auth.kerberos.KerberosTicket and its known dependencies. A guide on how to do this is available in the release notes of 2.8.6.
Credit: This issue was discovered by K.
References