Threat actors use automated scanners to locate exposed server roots. They issue targeted HTTP requests directly to common installation subdirectories to confirm whether the PHPUnit testing package is publicly accessible. Sample Attack Payload
An attacker needs zero credentials to exploit this vulnerability. They only require HTTP access to the specific script path. A typical malicious payload looks like this:
rm -rf vendor/phpunit/
Long term (weeks–months)
<?php // Original vulnerable code (simplified) eval('?>'.file_get_contents('php://input')); vendor phpunit phpunit src util php eval-stdin.php cve
For older, hard-to-patch systems, these services can offer expanded security maintenance.
The problem lies within a helper script included in older versions of PHPUnit, a widely used testing framework for PHP applications. The Root Cause: eval-stdin.php Threat actors use automated scanners to locate exposed
<?php system('id'); ?>
(or similar paths), which reads PHP code directly from standard input (stdin) and executes it without any authentication or validation. Vulnerability Type: Remote Code Execution (RCE) / Code Injection. CVSS Score: 9.8 (Critical). Affected Versions: PHPUnit before and versions 5.x before National Institute of Standards and Technology (.gov) 2. Why This Happens This vulnerability is typically exploited in production environments directory is accidentally exposed to the public internet. They only require HTTP access to the specific script path
For an attack to succeed, two specific environment conditions must be met:
«Õîááè ìàðêåò» ã.Íîâîñèáèðñê
óë.Èíæåíåðíàÿ, 4à, îô.524
òåë.: +7 (951) 392 1632
òåë.: +7 (383) 32 83 003
Îòêðûòû â ðàáî÷èå äíè ñ 8-00 äî 18-00
