HighGHSA-qq5c-677p-737qCVE-2024-51736

Symfony vulnerable to command execution hijack on Windows with Process class

Published 6 Nov 2024 · Updated 10 Sept 2026

Affected packages

Affected
<5.4.46
Fixed in
5.4.46
Update to the fixed version for your release line, for example:composer require symfony/process:^5.4.46
Affected
>=6.0.0 <6.4.14
Fixed in
6.4.14
Update to the fixed version for your release line, for example:composer require symfony/process:^6.4.14
Affected
>=7.0.0 <7.1.7
Fixed in
7.1.7
Update to the fixed version for your release line, for example:composer require symfony/process:^7.1.7
Affected
<5.4.46
Fixed in
5.4.46
Update to the fixed version for your release line, for example:composer require symfony/symfony:^5.4.46
Affected
>=6.0.0 <6.4.14
Fixed in
6.4.14
Update to the fixed version for your release line, for example:composer require symfony/symfony:^6.4.14
Affected
>=7.0.0 <7.1.7
Fixed in
7.1.7
Update to the fixed version for your release line, for example:composer require symfony/symfony:^7.1.7

Details

Description

On Windows, when an executable file named cmd.exe is located in the current working directory it will be called by the Process class when preparing command arguments, leading to possible hijacking.

Resolution

The Process class now uses the absolute path to cmd.exe.

The patch for this issue is available here for branch 5.4.

Credits

We would like to thank Jordi Boggiano for reporting the issue and Nicolas Grekas for providing the fix.

Is GHSA-qq5c-677p-737q 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 symfony/process, and gives you the command that fixes it.

References

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