CVE-2026-47065 in MINAinformación

Resumen

por VulDB • 2026-06-03

ZDRES-232: resolveProxyClass no está sobrescrito - Bypass del filtro acceptMatchers mediante java.lang.reflect.Proxy

Evaluación: Abordado completamente.

Cuando el flujo serializado contiene un TC_PROXYCLASSDESC (el marcador para un java.lang.reflect.Proxy), se invoca a ObjectInputStream.readProxyDesc() del JDK. El JDK llama entonces a la implementación predeterminada de ObjectInputStream.resolveProxyClass(interfaces), la cual realiza Class.forName(intf, false, latestUserDefinedLoader()) para CADA nombre de interfaz y construye la clase proxy, eludiendo la lista de clases aceptadas.

ZDRES-233: Class.forName(name, initialize=true, classLoader) en readClassDescriptor desencadena el inicializador estático de las clases en la lista de permitidos

Evaluación: Abordado completamente.

Para CUALQUIER clase en la lista de permitidos, la deserialización de un flujo que la nombra desencadena el <clinit> (inicializador estático) de la clase ANTES de que se construya cualquier instancia. Esto significa que un atacante que proporcione un nombre de clase en la lista de permitidos (por ejemplo, el desarrollador escribió accept("com.myapp.*"), el atacante proporciona com.myapp.SomeClass) provoca la ejecución de <clinit> de SomeClass, y muchas clases del mundo real tienen inicializadores estáticos con efectos secundarios.

Ambos problemas han sido corregidos.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsable

Apache

Reservar

2026-05-18

Divulgación

2026-06-03

Moderación

aceptado

Artículo

VDB-368097

CPE

listo

EPSS

0.00046

KEV

no

Actividades

muy alto

Fuentes

Do you need the next level of professionalism?

Upgrade your account now!