title: Remote code execution via RMI
description: Apache jUDDI uses several classes related to Java's Remote Method Invocation (RMI) which (as an extension to UDDI) provides an alternate transport for accessing UDDI services. RMI uses the default Java serialization mechanism to pass parameters in RMI invocations. A remote attacker can send a malicious serialized object to the above RMI entries. The objects get deserialized without any check on the incoming data. In the worst case, it may let the attacker run arbitrary code remotely. For both jUDDI web service applications and jUDDI clients, the usage of RMI is disabled by default. Since this is an optional feature and an extension to the UDDI protocol, the likelihood of impact is low. Starting with 3.3.10, all RMI related code was removed.
problem types: CWE-502 Deserialization of Untrusted Data
affected:
{
product: Apache jUDDI
vendor: Apache Software Foundation
versions:
lessThan: 3.3.10, status: affected, version: unspecified, versionType: custom
}
metrics:
other: [
content: {'other': 'moderate'}
type: unknown
]
workarounds: For the jUDDI service web application, RMI and JNDI service registration is disabled by default. If it was enabled by the system owner, disable it.
For jUDDI Clients, do not use RMI Transports. This is an opt-in feature and is not typically used.