First published: Fri Nov 27 2009(Updated: )
The proc_open function in ext/standard/proc_open.c in PHP before 5.2.11 and 5.3.x before 5.3.1 does not enforce the (1) safe_mode_allowed_env_vars and (2) safe_mode_protected_env_vars directives, which allows context-dependent attackers to execute programs with an arbitrary environment via the env parameter, as demonstrated by a crafted value of the LD_LIBRARY_PATH environment variable.
Credit: secalert@redhat.com
Affected Software | Affected Version | How to fix |
---|---|---|
PHP | =4.3.9 | |
PHP | =4.4.9 | |
PHP | =3.0 | |
PHP | =5.2.9 | |
PHP | =4.0-beta1 | |
PHP | =3.0.5 | |
PHP | =3.0.11 | |
PHP | =5.1.5 | |
PHP | =5.1.2 | |
PHP | =4.0-beta4 | |
PHP | =4.2.0 | |
PHP | =5.1.1 | |
PHP | =3.0.1 | |
PHP | =3.0.2 | |
PHP | =4.4.4 | |
PHP | =5.0.0-beta1 | |
PHP | =4.1.0 | |
PHP | =5.1.6 | |
PHP | =4.3.4 | |
PHP | =4.0.4 | |
PHP | =4.3.0 | |
PHP | =4.0.5 | |
PHP | =5.0-rc1 | |
PHP | =5.2.7 | |
PHP | =5.2.2 | |
PHP | =3.0.8 | |
PHP | =5.0.5 | |
PHP | =4.3.6 | |
PHP | =3.0.13 | |
PHP | =5.0.1 | |
PHP | =4.0.7-rc4 | |
PHP | =5.1.4 | |
PHP | =4.0.7-rc2 | |
PHP | =4.3.7 | |
PHP | =5.0.4 | |
PHP | =4.0.7-rc1 | |
PHP | =4.2.2 | |
PHP | <=5.2.10 | |
PHP | =4.4.2 | |
PHP | =4.0-rc1 | |
PHP | =3.0.7 | |
PHP | =4.3.2 | |
PHP | =4.3.11 | |
PHP | =4.0.0 | |
PHP | =3.0.6 | |
PHP | =4.0.3-patch1 | |
PHP | =3.0.17 | |
PHP | =4.0.7 | |
PHP | =4 | |
PHP | =4.0.2 | |
PHP | =4.3.3 | |
PHP | =5.0-rc3 | |
PHP | =2.0 | |
PHP | =4.1.1 | |
PHP | =3.0.15 | |
PHP | =3.0.16 | |
PHP | =5.2.6 | |
PHP | =5.3.0 | |
PHP | =4.4.3 | |
PHP | =5.0.0-rc2 | |
PHP | =5.0.3 | |
PHP | =3.0.10 | |
PHP | =3.0.4 | |
PHP | =4.2.3 | |
PHP | =5.1.0 | |
PHP | =4.4.5 | |
PHP | =4.0.1-patch1 | |
PHP | =5.0.0-rc3 | |
PHP | =4.0 | |
PHP | =4.0-beta2 | |
PHP | =4.0.1-patch2 | |
PHP | =2.0b10 | |
PHP | =4.4.8 | |
PHP | =4.0.6 | |
PHP | =5.2.0 | |
PHP | =5.0-rc2 | |
PHP | =5.2.4 | |
PHP | =4.1.2 | |
PHP | =5.0.0-beta3 | |
PHP | =4.0.7-rc3 | |
PHP | =4.0-rc2 | |
PHP | =4.3.1 | |
PHP | =5.1.3 | |
PHP | =3.0.18 | |
PHP | =4.0-beta_4_patch1 | |
PHP | =4.4.0 | |
PHP | =4.3.10 | |
PHP | =4.2.1 | |
PHP | =5.0.0-rc1 | |
PHP | =4.0.4-patch1 | |
PHP | =4.0.1 | |
PHP | =1.0 | |
PHP | =5.0.2 | |
PHP | =4.4.6 | |
PHP | =3.0.12 | |
PHP | =4.2 | |
PHP | =4.4.1 | |
PHP | =4.0-beta3 | |
PHP | =4.0.3 | |
PHP | =3.0.14 | |
PHP | =3.0.9 | |
PHP | =3.0.3 | |
PHP | =5.0.0-beta4 | |
PHP | =5 | |
PHP | =5.0.0 | |
PHP | =4.3.8 | |
PHP | =4.3.5 | |
PHP | =5.0.0-beta2 | |
PHP | =5.2.8 | |
PHP | =4.4.7 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2009-4018 has been classified as a critical vulnerability due to its ability to allow attackers to execute arbitrary programs with a malicious environment.
To fix CVE-2009-4018, upgrade your PHP installation to version 5.2.11 or later, or 5.3.1 or later.
CVE-2009-4018 affects PHP versions before 5.2.11 and 5.3.x before 5.3.1, including several earlier versions.
The vulnerability can lead to remote code execution, allowing attackers to run arbitrary code by manipulating the environment variables.
While CVE-2009-4018 primarily affects outdated PHP versions, any systems still utilizing these versions are at risk and should be updated.