CVE-2024-52046
Apache MINA: las aplicaciones MINA que utilizan deserialización sin límites pueden permitir RCE
- Publicado
- 25 dic 2024
- Actualizado
- 2 ago 2025
- Asignación de CNA
- apache
- Evidencia observada
- 28 ago 2026
CVSS primario
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XModerado · próximos 30 días
- Percentil
- 97,8 %
- Fecha del modelo
- 21 sept 2026
EPSS es una estimación estadística, no una certeza o una medida de impacto. Combínelo con CVSS, estado KEV, exposición y su entorno.
Resumen
ObjectSerializationDecoder en Apache MINA utiliza el protocolo de deserialización nativo de Java para procesar datos serializados entrantes, pero carece de las defensas y controles de seguridad necesarios. Esta vulnerabilidad permite a los atacantes aprovechar el proceso de deserialización enviando datos serializados maliciosos especialmente manipulados, lo que podría provocar ataques de ejecución remota de código (RCE). Este problema afecta a las versiones principales de MINA 2.0.X, 2.1.X y 2.2.X y se solucionará con las versiones 2.0.27, 2.1.10 y 2.2.4. También es importante tener en cuenta que una aplicación que utiliza la librería central MINA solo se verá afectada si se llama al método IoBuffer#getObject(), y este método específico se llama potencialmente al agregar una instancia de ProtocolCodecFilter usando la clase ObjectSerializationCodecFactory en la cadena de filtros. Si su aplicación utiliza específicamente esas clases, debe actualizar a la última versión de la librería principal de MINA. La actualización no será suficiente: también necesitará permitir explícitamente las clases que el descodificador aceptará en la instancia de ObjectSerializationDecoder, usando uno de los tres nuevos métodos: /** * Aceptar nombres de clase donde el ClassNameMatcher suministrado coincida para * la deserialización, a menos que sean de lo contrario rechazado. * * @param classNameMatcher el comparador a usar */ public void Accept(ClassNameMatcher classNameMatcher) /** * Acepta nombres de clase que coincidan con el patrón proporcionado para * la deserialización, a menos que se rechacen de otra manera. * * @param patrón estándar Java regexp */ public void aceptar(Patrón de patrón) /** * Acepte las clases especificadas como comodín para la deserialización, * a menos que se rechacen de otra manera. * * @param patrones Patrones de nombres de archivos comodín definidos por * {@link org.apache.commons.io.FilenameUtils#wildcardMatch(String, String) FilenameUtils.wildcardMatch} */ public void Accept(String... patrones) De forma predeterminada , el decodificador rechazará *todas* las clases que estarán presentes en los datos entrantes. Nota: Los subproyectos FtpServer, SSHd y Vysper no se ven afectados por este problema.
Fuentes
1Uso responsable
Utilice información sobre vulnerabilidades solo en sistemas de su propiedad o que esté autorizado a probar. Kitploit enlaza con metadatos de investigación pública y no almacena código de explotación ni cargas útiles maliciosas.