CVE-2024-52046
Apache MINA: MINA-Anwendungen, die unbegrenzte Deserialisierung verwenden, können RCE ermöglichen
- Veröffentlicht
- 25.12.2024
- Aktualisiert
- 02.08.2025
- CNA zuweisen
- apache
- Beweise beobachtet
- 28.08.2026
Primäres CVSS
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:XMittel · nächste 30 Tage
- Perzentil
- 97,8 %
- Modelldatum
- 21.09.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
Der ObjectSerializationDecoder in Apache MINA verwendet Javas natives Deserialisierungsprotokoll, um eingehende serialisierte Daten zu verarbeiten, entbehrt jedoch der notwendigen Sicherheitsprüfungen und -abwehrmaßnahmen. Diese Schwachstelle ermöglicht es Angreifern, den Deserialisierungsprozess auszunutzen, indem sie speziell konstruierte, bösartige serialisierte Daten senden, was potenziell zu Remote-Code-Execution-Angriffen (RCE) führen kann. Dieses Problem betrifft die MINA-Core-Versionen 2.0.X, 2.1.X und 2.2.X und wird durch die Releases 2.0.27, 2.1.10 und 2.2.4 behoben. Es ist auch wichtig zu beachten, dass eine Anwendung, die die MINA-Core-Bibliothek verwendet, nur betroffen ist, wenn die Methode `IoBuffer#getObject()` aufgerufen wird, und diese spezifische Methode potenziell aufgerufen wird, wenn eine `ProtocolCodecFilter`-Instanz unter Verwendung der Klasse `ObjectSerializationCodecFactory` in der Filterkette hinzugefügt wird. Wenn Ihre Anwendung speziell diese Klassen verwendet, müssen Sie auf die neueste Version der MINA-Core-Bibliothek aktualisieren. Das Aktualisieren allein reicht jedoch nicht aus: Sie müssen außerdem explizit die Klassen zulassen, die der Decoder in der `ObjectSerializationDecoder`-Instanz akzeptieren soll, indem Sie eine der drei neuen Methoden verwenden: ```java /** * Accept class names where the supplied ClassNameMatcher matches for * deserialization, unless they are otherwise rejected. * * @param classNameMatcher the matcher to use */ public void accept(ClassNameMatcher classNameMatcher) /** * Accept class names that match the supplied pattern for * deserialization, unless they are otherwise rejected. * * @param pattern standard Java regexp */ public void accept(Pattern pattern) /** * Accept the wildcard specified classes for deserialization, * unless they are otherwise rejected. * * @param patterns Wildcard file name patterns as defined by * {@link org.apache.commons.io.FilenameUtils#wildcardMatch(String, String) FilenameUtils.wildcardMatch} */ public void accept(String... patterns) ``` Standardmäßig lehnt der Decoder *alle* Klassen ab, die in den eingehenden Daten vorhanden sind. Hinweis: Die Unterprojekte FtpServer, SSHd und Vysper sind von diesem Problem nicht betroffen.
Quellen
1Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.