TYPO3 CMS Possible Insecure Deserialization in Extbase Request Handling
Published 7 Jun 2024 · Updated 4 Dec 2024
Affected packages
- Affected
- >=8.0.0 <8.7.30
- Fixed in
- 8.7.30
composer require typo3/cms:^8.7.30- Affected
- >=9.0.0 <9.5.12
- Fixed in
- 9.5.12
composer require typo3/cms:^9.5.12Details
It has been discovered that request handling in Extbase can be vulnerable to insecure deserialization. User submitted payload has to be signed with a corresponding HMAC-SHA1 using the sensitive TYPO3 encryptionKey as secret - invalid or unsigned payload is not deserialized.
However, since sensitive information could have been leaked by accident (e.g. in repositories or in commonly known and unprotected backup files), there is the possibility that attackers know the private encryptionKey and are able to calculate the required HMAC-SHA1 to allow a malicious payload to be deserialized.
Requirements for successfully exploiting this vulnerability (all of the following):
- rendering at least one Extbase plugin in the frontend
- encryptionKey has been leaked (from LocalConfiguration.php or corresponding .env file)
Is GHSA-hh95-5xm5-v8v7 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, and gives you the command that fixes it.
References
- Linkgithub.com/TYPO3/typo3/commit/57e4ed35a6e58521a931855e702b2688b3bc3d62
- Linkgithub.com/TYPO3/typo3/commit/b1626ad8fd4aebedc15e424a76f86094d78b2564
- Linkgithub.com/FriendsOfPHP/security-advisories/blob/master/typo3/cms/2019-12-17-7.yaml
- Packagegithub.com/TYPO3/typo3
- Linktypo3.org/security/advisory/typo3-psa-2019-011
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.