CVE-2021-23420 Deserialization of Untrusted Data
Attackers can execute arbitrary commands via unsafe deserialization in the RunProcess class of the Codeception PHP testing library.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-23420?
CVE-2021-23420 is a high-severity unsafe deserialization vulnerability in codeception/codeception, published on 11 Aug 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
This affects the package codeception/codeception from 4.0.0 and before 4.1.22, before 3.1.3. The RunProcess class can be leveraged as a gadget to run arbitrary commands on a system that is deserializing user input without validation.
Weakness: CWE-502
Which versions are affected by CVE-2021-23420?
4 open source packages ship an affected version, including codeception/codeception. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
codeception/codeception Packagist | All versions | 3.1.3 |
codeception/codeception Packagist | All versions | 3.1.3 |
codeception/codeception Packagist | From 4.0.0 | 4.1.22 |
codeception/codeception Packagist | From 4.0.0 | 4.1.22 |
Products include Codeception Codeception.
How do I fix CVE-2021-23420?
Upgrade codeception/codeception to a fixed version for your release line: 3.1.3 or 4.1.22.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2021-23420 being exploited?
There is no known exploitation of CVE-2021-23420 in the wild and no public exploit code.
Sources
Also known as GHSA-4574-qv3w-fcmg, SNYK-PHP-CODECEPTIONCODECEPTION-1324585.