7.8High

CVE-2026-41570PHPUnit: Argument injection via newline in PHP INI values forwarded to child processes

sebastianbergmann phpunit Published: (6 months ago)

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.

Weakness (CWE): CWE-93CWE-88

Data: CVE.org, NVD, CISA KEV, FIRST EPSS, Ubuntu. Published as the sources state it, in English.

Affected products and versions

VendorProductVersions
phpunit project phpunit 12.5.21
sebastianbergmann phpunit = 12.5.21, = 13.1.5

References and patches

CPE matches (NVD) (2)

  • cpe:2.3:a:phpunit_project:phpunit:12.5.21:*:*:*:*:-:*:*
  • cpe:2.3:a:phpunit_project:phpunit:13.1.5:*:*:*:*:-:*:*