CVE-2026-86404
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
EAP's Artemis deserialization configuration permits deserialization by default. ObjectMessage.getObject() uses ObjectInputStreamWithClassLoader, which implements allow-list/block-list filtering via its checkSecurity()/isTrustedType() method. However, by default both allow-list and block-list are empty. When the allow-list is empty (size == 0), isTrustedType() returns true for ALL classes. This means all classes are deserializable by default.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.16.0-22.redhat_00057.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.3.14-11.SP11_redhat_00001.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:1.5.26-2.Final_redhat_00001.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.18.8-1.redhat_00003.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.18.8-1.redhat_00003.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.18.8-1.redhat_00003.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.18.8-1.redhat_00003.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.18.8-1.redhat_00003.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.18.8-1.redhat_00003.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:5.0.31-3.SP2_redhat_00001.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:1.10.0-46.Final_redhat_00044.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:4.1.135-1.Final_redhat_00001.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:4.1.135-1.Final_redhat_00001.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.5.5-30.SP12_redhat_00020.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.5.5-24.SP12_redhat_00016.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:2.2.40-2.SP3_redhat_00001.1.el7eap < * | unaffected |
| Red Hat | Red Hat JBoss Enterprise Application Platform 7.4 ELS on RHEL 7 | 0:7.4.25-2.GA_redhat_00001.1.el7eap < * | unaffected |
Weaknesses
- CWE-502: Deserialization of Untrusted Data
Workarounds
Configure a restrictive deserialization-allow-list on every pooled-connection-factory resource. For example, if your MDBs only expect to receive objects of type com.yourapp.OrderEvent, set the allow-list to "com.yourapp". This switches ObjectInputStreamWithClassLoader from "allow everything" to "deny by default, allow only listed classes." With this in place, even if an attacker injects a malicious ObjectMessage through any vector, the deserialization of gadget chain classes is blocked.
References
- https://access.redhat.com/errata/RHSA-2026:53644
- https://access.redhat.com/security/cve/CVE-2026-86404
- https://bugzilla.redhat.com/show_bug.cgi?id=2477930
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.