PHPUnit: Remote code execution — GLSA 201711-15

A vulnerability was discovered in PHPUnit which may allow an unauthenticated remote attacker to execute arbitrary PHP code.

Affected packages

dev-php/phpunit on all architectures
Affected versions < 5.7.15-r1
Unaffected versions >= 5.7.15-r1

Background

PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks.

Description

When PHPUnit is installed in a production environment via composer and these modules are in a web accessible directory, the eval-stdin.php file in PHPUnit contains vulnerable statements that trigger the vulnerability.

Impact

A remote attacker could possibly execute arbitrary PHP code or cause a Denial of Service condition.

Workaround

There are several ways to fix or mitigate this vulnerability:

Remove PHPUnit from the production environment.

Update PHPUnit.

Manually apply the patch.

Disable direct access to the composer packages by placing .htaccess file to /vendor folder.

Resolution

All PHPUnit users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-php/phpunit-5.7.15-r1"
 

References

Release date
November 19, 2017

Latest revision
November 19, 2017: 1

Severity
normal

Exploitable
remote

Bugzilla entries