MediumGHSA-7vp9-x248-9vr9CVE-2026-0859

TYPO3 CMS Allows Insecure Deserialization via Mailer File Spool

Published 13 Jan 2026 · Updated 3 Feb 2026

Affected packages

Affected
>=14.0.0 <14.0.2
Fixed in
14.0.2
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^14.0.2
Affected
>=13.0.0 <13.4.23
Fixed in
13.4.23
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^13.4.23
Affected
>=12.0.0 <12.4.41
Fixed in
12.4.41
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^12.4.41
Affected
>=11.0.0 <11.5.49
Fixed in
11.5.49
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^11.5.49
Affected
>=10.0.0 <10.4.55
Fixed in
10.4.55
Update to the fixed version for your release line, for example:composer require typo3/cms-core:^10.4.55

Details

Problem

Local platform users who can write to TYPO3’s mail‑file spool directory can craft a file that the system will automatically deserialize without any class restrictions. This flaw allows an attacker to inject and execute arbitrary PHP code in the public scope of the web server.

The vulnerability is triggered when TYPO3 is configured with $GLOBALS['TYPO3_CONF_VARS']['MAIL']['transport_spool_type'] = 'file'; and a scheduler task or cron job runs the command mailer:spool:send. The spool‑send operation performs the insecure deserialization that is at the core of this issue.

Solution

Update to TYPO3 versions 10.4.55 ELTS, 11.5.49 ELTS, 12.4.41 LTS, 13.4.23 LTS, 14.0.2 that fix the problem described.

Credits

Thanks to Vitaly Simonovich for reporting this issue, and to TYPO3 security team members Elias Häußler and Oliver Hader for fixing it.

References

Is GHSA-7vp9-x248-9vr9 in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected typo3/cms-core, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.