PHPUnit: Argument injection via newline in PHP INI values forwarded to child processes
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| sebastianbergmann | phpunit | affected |
|
Configuration 1 [-]
|
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sebastianbergmann | Phpunit |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-qrr6-mg7r-m243 | PHPUnit has Argument injection via newline in PHP INI values that are forwarded to child processes |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.191% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Phpunit Project
Phpunit Project phpunit |
|
| CPEs | cpe:2.3:a:phpunit_project:phpunit:12.5.21:*:*:*:*:-:*:* cpe:2.3:a:phpunit_project:phpunit:13.1.5:*:*:*:*:-:*:* |
|
| Vendors & Products |
Phpunit Project
Phpunit Project phpunit |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Sebastianbergmann
Sebastianbergmann phpunit |
|
| Vendors & Products |
Sebastianbergmann
Sebastianbergmann phpunit |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | PHPUnit is a testing framework for PHP. In versions 12.5.21 and 13.1.5, PHPUnit forwards PHP INI settings to child processes (used for isolated/PHPT test execution) as -d name=value command-line arguments without neutralizing INI metacharacters. Because PHP's INI parser interprets " as a string delimiter, ; as the start of a comment, and most importantly a newline as a directive separator, a value containing a newline is parsed by the child process as multiple INI directives. An attacker able to influence a single INI value can therefore inject arbitrary additional directives into the child's configuration, including auto_prepend_file, extension, disable_functions, open_basedir, and others. Setting auto_prepend_file to an attacker-controlled path yields remote code execution in the child process. This issue has been patched in versions 12.5.22 and 13.1.6. | |
| Title | PHPUnit: Argument injection via newline in PHP INI values forwarded to child processes | |
| Weaknesses | CWE-88 CWE-93 |
|
| References |
| |
| Metrics |
cvssV3_1
|