CVE-2026-103831: Insecure deserialization in the TrueLayer Magento 2 plugin
CVE-2026-103831: Insecure deserialization vulnerability in the Psr16CacheAdapter component of the TrueLayer Magento 2 Plugin, due to the use of PHP's native unserialize() function without restrictions on the classes allowed when retrieving data stored in the cache. An attacker who already has the ability to write manipulated data to the cache backend used by Magento—such as Redis or Memcached—could inject specially crafted PHP objects and trigger their deserialization, potentially leading to arbitrary code execution via gadget strings available in the application environment. Exploitation therefore requires a prerequisite condition that allows writing to the cache infrastructure, either through access to the local file system or to a cache infrastructure accessible from the Magento environment.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
TrueLayer Magento 2 Pluginto a version that resolves this vulnerability.Fixed in 2.4.3 - Compensating control
Ensure the Magento caching infrastructure, including Redis or Memcached, does not allow unauthorized write access.
Event History
Frequently Asked Questions
Who is realistically exposed to exploitation?
Magento environments using the TrueLayer Magento 2 Plugin are exposed only if an attacker can write manipulated entries to the cache backend used by Magento, such as Redis or Memcached, or can write through the local file system. The vulnerability is not described as remotely exploitable without this cache-writing prerequisite.
What does an attacker need to do to exploit this issue?
The attacker must first gain a way to place crafted serialized PHP object data into Magento's cache backend. When the affected component retrieves that data, it calls PHP unserialize() without restricting allowed classes; available gadget strings in the application environment may then permit arbitrary code execution.
What should be prioritized if patching cannot happen immediately?
Prevent unauthorized writes to the Magento cache infrastructure and local file system. In particular, restrict access to cache backends such as Redis or Memcached from systems and users that do not require it, because cache write access is the stated exploitation prerequisite.