Skip to main content
← All vulnerabilities
CVE-2026-41635GHSA-8297-V2RF-2P32

Apache MINA: AbstractIoBuffer.resolveClass() null-clazz Branch Skips acceptMatchers Filter — Full Object Deserialization RCE

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.0.28, 2.1.11, 2.2.6
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: total

Summary

Apache MINA's AbstractIoBuffer.resolveClass() contains two branches, one of them (for static classes or primitive types) does not check the class at all, bypassing the classname allowlist and allowing arbitrary code to be executed. The fix checks if the class is present in the accepted class filter before calling Class.forName().  Affected versions are Apache MINA 2.0.0 <= 2.0.27, 2.1.0 <= 2.1.10, and 2.2.0 <= 2.2.5. The problem is resolved in Apache MINA 2.0.28, 2.1.11, and 2.2.6 by applying the classname allowlist earlier. Affected are applications using Apache MINA that call  IoBuffer.getObject(). Applications using Apache MINA are advised to upgrade.

Timeline

  1. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: total

  2. CVE published
  3. Record last updated

Affected versions

  • org.apache.mina:mina-core

    From 2.2.0 · through 2.2.5; From 2.1.0 · through 2.1.10; From 2.0.0 · through 2.0.27

  • org.apache.mina:mina-coreMaven

    From 2.0.0 · fixed in 2.0.28

  • org.apache.mina:mina-coreMaven

    From 2.1.0 · fixed in 2.1.11

  • org.apache.mina:mina-coreMaven

    From 2.2.0 · fixed in 2.2.6

References 1

lists.apache.org