CVE-2026-27206

Zumba Json Serializer is a library to serialize PHP variables in JSON format. In versions 3.2.2 and below, the library allows deserialization of PHP objects from JSON using a special @type field. The deserializer instantiates any class specified in the @type field without restriction. When processing untrusted JSON input, this behavior may allow an attacker to instantiate arbitrary classes available in the application. If a vulnerable application passes attacker-controlled JSON into JsonSerializer::unserialize() and contains classes with dangerous magic methods (such as __wakeup() or __destruct()), this may lead to PHP Object Injection and potentially Remote Code Execution (RCE), depending on available gadget chains in the application or its dependencies. This behavior is similar in risk profile to PHP's native unserialize() when used without the allowed_classes restriction. Applications are impacted only if untrusted or attacker-controlled JSON is passed into JsonSerializer::unserialize() and the application or its dependencies contain classes that can be leveraged as a gadget chain. This issue has been fixed in version 3.2.3. If an immediate upgrade isn't feasible, mitigate the vulnerability by never deserializing untrusted JSON with JsonSerializer::unserialize(), validating and sanitizing all JSON input before deserialization, and disabling @type-based object instantiation wherever possible.
Configurations

No configuration.

History

23 Feb 2026, 18:13

Type Values Removed Values Added
Summary
  • (es) Zumba Json Serializer es una biblioteca para serializar variables de PHP en formato JSON. En las versiones 3.2.2 e inferiores, la biblioteca permite la deserialización de objetos PHP desde JSON utilizando un campo especial @type. El deserializador instancia cualquier clase especificada en el campo @type sin restricciones. Al procesar entrada JSON no confiable, este comportamiento puede permitir a un atacante instanciar clases arbitrarias disponibles en la aplicación. Si una aplicación vulnerable pasa JSON controlado por el atacante a JsonSerializer::unserialize() y contiene clases con métodos mágicos peligrosos (como __wakeup() o __destruct()), esto puede llevar a la inyección de objetos PHP y, potencialmente, a la ejecución remota de código (RCE), dependiendo de las cadenas de gadgets disponibles en la aplicación o sus dependencias. Este comportamiento es similar en perfil de riesgo al unserialize() nativo de PHP cuando se usa sin la restricción allowed_classes. Las aplicaciones se ven afectadas solo si se pasa JSON no confiable o controlado por el atacante a JsonSerializer::unserialize() y la aplicación o sus dependencias contienen clases que pueden ser aprovechadas como una cadena de gadgets. Este problema ha sido solucionado en la versión 3.2.3. Si una actualización inmediata no es factible, mitigue la vulnerabilidad al nunca deserializar JSON no confiable con JsonSerializer::unserialize(), validando y saneando toda la entrada JSON antes de la deserialización, y deshabilitando la instanciación de objetos basada en @type siempre que sea posible.

21 Feb 2026, 07:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-02-21 07:16

Updated : 2026-02-23 18:13


NVD link : CVE-2026-27206

Mitre link : CVE-2026-27206

CVE.ORG link : CVE-2026-27206


JSON object : View

Products Affected

No product.

CWE
CWE-502

Deserialization of Untrusted Data