CVE-2024-52046
Apache MINA: le applicazioni MINA che utilizzano deserializzazione illimitata possono consentire RCE
- Pubblicato
- 25 dic 2024
- Aggiornato
- 2 ago 2025
- Assegnazione CNA
- apache
- Evidenza osservata
- 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:XModerato · prossimi 30 giorni
- Percentile
- 97,8%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
# Vulnerabilità di deserializzazione in Apache MINA ObjectSerializationDecoder in Apache MINA utilizza il protocollo di deserializzazione nativo di Java per elaborare i dati serializzati in ingresso, ma manca dei controlli di sicurezza e delle difese necessarie. Questa vulnerabilità consente agli aggressori di sfruttare il processo di deserializzazione inviando dati serializzati dannosi appositamente predisposti, con il potenziale di causare attacchi di esecuzione di codice remoto (RCE). Il problema riguarda le versioni core di MINA 2.0.X, 2.1.X e 2.2.X e verrà risolto con le release 2.0.27, 2.1.10 e 2.2.4. È inoltre importante notare che un'applicazione che utilizza la libreria core di MINA sarà interessata solo se viene chiamato il metodo `IoBuffer#getObject()`, e questo metodo specifico viene potenzialmente chiamato quando si aggiunge un'istanza di `ProtocolCodecFilter` utilizzando la classe `ObjectSerializationCodecFactory` nella catena di filtri. Se la tua applicazione utilizza specificamente queste classi, devi aggiornare all'ultima versione della libreria core di MINA. L'aggiornamento non sarà sufficiente: devi anche consentire esplicitamente le classi che il decoder accetterà nell'istanza di `ObjectSerializationDecoder`, utilizzando uno dei tre nuovi metodi: ```java /** * Accetta i nomi delle classi per cui il ClassNameMatcher fornito corrisponde * per la deserializzazione, a meno che non vengano altrimenti rifiutati. * * @param classNameMatcher il matcher da utilizzare */ public void accept(ClassNameMatcher classNameMatcher) /** * Accetta i nomi delle classi che corrispondono al pattern fornito per * la deserializzazione, a meno che non vengano altrimenti rifiutati. * * @param pattern regexp Java standard */ public void accept(Pattern pattern) /** * Accetta le classi con wildcard specificate per la deserializzazione, * a meno che non vengano altrimenti rifiutate. * * @param patterns pattern di nomi file con wildcard come definiti da * {@link org.apache.commons.io.FilenameUtils#wildcardMatch(String, String) FilenameUtils.wildcardMatch} */ public void accept(String... patterns) ``` Per impostazione predefinita, il decoder rifiuterà *tutte* le classi che saranno presenti nei dati in ingresso. Nota: I sottoprogetti FtpServer, SSHd e Vysper non sono interessati da questo problema.
Fonti
1Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.