Skip to content

Commit d1569f8

Browse files
committed
Land rapid7#9413, Expand the number of class names searched when checking for an exploitable JMX server
2 parents 10fde42 + 35bec8d commit d1569f8

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

modules/exploits/multi/misc/java_jmx_server.rb

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,10 +193,22 @@ def is_rmi?
193193
end
194194

195195
def discover_endpoint
196+
rmi_classes_and_interfaces = [
197+
'javax.management.remote.rmi.RMIConnectionImpl',
198+
'javax.management.remote.rmi.RMIConnectionImpl_Stub',
199+
'javax.management.remote.rmi.RMIConnector',
200+
'javax.management.remote.rmi.RMIConnectorServer',
201+
'javax.management.remote.rmi.RMIIIOPServerImpl',
202+
'javax.management.remote.rmi.RMIJRMPServerImpl',
203+
'javax.management.remote.rmi.RMIServerImpl',
204+
'javax.management.remote.rmi.RMIServerImpl_Stub',
205+
'javax.management.remote.rmi.RMIConnection',
206+
'javax.management.remote.rmi.RMIServer'
207+
]
196208
ref = send_registry_lookup(name: datastore['JMXRMI'])
197209
return nil if ref.nil?
198210

199-
unless ref[:object] == 'javax.management.remote.rmi.RMIServerImpl_Stub'
211+
unless rmi_classes_and_interfaces.include? ref[:object]
200212
vprint_error("JMXRMI discovery returned unexpected object #{ref[:object]}")
201213
return nil
202214
end

0 commit comments

Comments
 (0)